home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / ast_comp / langlist.txt < prev    next >
Text File  |  1993-07-04  |  385KB  |  8,824 lines

  1. From billk@cs.ukans.edu Fri Feb  5 05:40:52 1993
  2. Received: from mars.cs.ukans.edu by cogsci.Berkeley.EDU (5.63/1.29)
  3.     id AA25974; Fri, 5 Feb 93 05:40:49 -0800
  4. From: Bill Kinnersley <billk@cs.ukans.edu>
  5. Date: Fri, 5 Feb 1993 07:39:42 CST
  6. X-Mailer: Mail User's Shell (7.2.5 10/14/92)
  7. To: muir@cogsci.Berkeley.EDU
  8. Subject: Part 1
  9. Message-Id:  <9302050739.aa07589@cs.ukans.edu>
  10.  
  11. The Language List - Version 1.9, January 13, 1993
  12.  
  13. Collected information on about 2000 computer languages, past and present.
  14.  
  15. Currently maintained by:
  16.  
  17.   Bill Kinnersley
  18.   Computer Science Department
  19.   University of Kansas
  20.   Lawrence, KS 66045
  21.  
  22.   billk@hawk.cs.ukans.edu
  23.  
  24. Version 1.8:  Sept 1, 1992
  25. Version 1.7:  Apr  6, 1992
  26. Version 1.6:  Jan 15, 1992
  27. Version 1.5:  Nov 10, 1991
  28. Version 1.4:  Sept 8, 1991
  29. Version 1.3:  July 8, 1991
  30. Version 1.2:  May 30, 1991
  31. Version 1.1:  May  1, 1991
  32. Version 1.0:  Mar  7, 1991
  33.  
  34. Started by:
  35.  
  36.   Tom Rombouts
  37.   Ashton-Tate Product Development
  38.   20101 Hamilton Avenue, Torrance, CA 90277
  39.   Work: (213)538-7108
  40.  
  41.   Home:
  42.   535 Esplanade, #502
  43.   Redondo Beach, CA  90277
  44.   Ans Svc: (213)543-3811
  45.  
  46.   USENET:  tomr@ashtate.A-T.com
  47.  
  48.   This document is intended to become one of the longest lists of computer
  49. programming languages ever assembled (or compiled).  Its purpose is not to
  50. be a definitive scholarly work, but rather to collect and provide the best
  51. information that we can in a timely fashion.  Its accuracy and completeness
  52. depends on the readers of Usenet, so if you know about something that
  53. should be added, please help us out.  Over 100 netters have already
  54. contributed to this effort.  We hope that this list will continue to evolve
  55. as a useful resource available to everyone on the net with an interest in
  56. programming languages.
  57.  
  58.  
  59. "YOU LEFT OUT LANGUAGE ___!"
  60.  
  61.    If you have information about a language that is not on this list,
  62. please e-mail the relevant details to the current maintainer, as shown
  63. above.  If you can cite a published reference to the language, that will
  64. help in determining authenticity.
  65.  
  66.  
  67. What Languages Should Be Included
  68.  
  69.    The "Published" Rule - A language should be "published" to be included
  70. in this list.  There is no precise criterion here, but for example a
  71. language devised solely for the compiler course you're taking doesn't
  72. count.  Even a language that is the topic of a PhD thesis might not
  73. necessarily be included.  But if material on that language was published in
  74. a technical journal or report, or if it formed the basis for additional
  75. research, the language belongs in this list.  A language does NOT have to
  76. be implemented (actually running on at least one computer) to be included. 
  77. Many languages appearing in the ACM SIGPLAN Notices fall into this
  78. category.
  79.  
  80.    In general when there's any doubt, an entry will be included.  Making
  81. the list as complete as possible necessarily means there will be a large
  82. number of obscure entries.  To compensate for this "clutter" effect, more
  83. widespread languages such as C or FORTRAN should have longer entries.
  84.  
  85.    For historical completeness roughly 200 early pre-1959 "automatic
  86. programming systems" were included, based on a list from CACM 2(5):16, May
  87. 1959.  It can be argued that many of these are not really programming
  88. languages as the term is used today.  We've also included some formalisms
  89. which are clearly not meant to be used as a source language for writing
  90. programs: metalanguages such as BNF, intermediate languages such as P-Code,
  91. and computational models such as Linda.
  92.  
  93.  
  94. Dialects, Variants, Versions and Implementations
  95.  
  96.    Computer languages evolve, and are related to one another in rather
  97. complex ways.  Almost every language can be regarded as an improved version
  98. of something else.  Sometimes it's hard to know where to draw the line and
  99. say "this is a separate language".  Taking LISP as an example, what started
  100. out as a single language has evolved into a large family.  Dialects (such
  101. as Scheme and Common LISP) have major differences and are certainly
  102. considered by their users to be distinct languages.  Variants (such as
  103. Kyoto Common LISP and Allegro CL) are primarily intended to be the same,
  104. but have certain features which make them incompatible.  Implementations
  105. are designed to run on particular machines or operating systems and will
  106. usually have special features added.  Inevitably a series of revisions will
  107. be issued, causing further small changes in the language.  It has even been
  108. suggested that if command line options are present, each choice of options
  109. could be considered a distinct language!
  110.  
  111.    A language's name by itself is not always an accurate guide to its
  112. identity.  Sometimes a language will undergo significant evolution without
  113. any official change in name (e.g. SETL2 has done this).  Sometimes just the
  114. name will change (IAL to ALGOL to ALGOL 58).  And occasionally a name has
  115. been used for several distinct languages (e.g. Vulcan).
  116.  
  117.    It may also be debatable what is "in" a language and what is not.  For
  118. example SML is defined in stages: a "core syntax" surrounded by a standard
  119. set of extensions.  Technically that makes it two separate languages, but
  120. the SML core syntax would be frustrating to write programs in.  Other
  121. languages have purposely omitted essential features like I/O from their
  122. definition because they were never intended to be used without a standard
  123. library (C) or interface (Smalltalk-80), or because they constitute the
  124. command language for a particular product or system.  Still other languages
  125. are by their very nature extensible, and the number of macro packages built
  126. on TeX for example could be called an endless list of separate "languages".
  127.  
  128.    Brand names - You might wonder why we do include a number of commercial
  129. products such as Turbo Pascal.  Usually these items offer non-standard
  130. extensions to the base language.  This has been particularly true in the
  131. varieties of BASIC and Prolog.  But also one could argue that in a strict
  132. sense Microsoft C and Turbo C for example are distinct languages.
  133.    Another reason for including entries of this type is that many languages
  134. are proprietary, appearing only in a certain product.  Such languages may
  135. be distinctive and interesting and deserve to be here.  On the other hand
  136. we don't want the list to become a catalog of commercial programming
  137. products.
  138.  
  139.  
  140. What Each Entry Should Contain
  141.  
  142. Name:  An explanation of the language name, which in perhaps 80% of the
  143. cases is some form of acronym or abbreviation.
  144.  
  145. Date of origin:  The year when a language first appeared.  Since the
  146. design, implementation and distribution of a language can take place over a
  147. period of several years, such dates are often approximate.  Any language
  148. that has an ANSI, ISO or BSI standard should include the date approved. 
  149. For specific brands such as Turbo Pascal the release dates of each version
  150. can be listed.
  151.  
  152. Reference:  At least one reference work on the language, as definitive or
  153. as official as possible.
  154.  
  155. Availability:  ftp site, commercial source or publisher, contacts for
  156. further information.
  157.  
  158. "See also:"  Related languages or terms that may also be of interest.
  159.  
  160.    Any material marked with brackets "[]" is doubtful and may be considered
  161. a request for further information.
  162.  
  163.    Editorial Comments -  What constitutes a good language has often become
  164. the subject of intense debate.  We've tried to avoid adding to this by
  165. making any remarks that are clearly subjective, such as calling a language
  166. "powerful".  Nevertheless some comments might still be construed this way. 
  167. For instance saying that Pascal is "ALGOL-like" could offend both some
  168. ALGOL and some Pascal users.  Also, some questions of historical origin are
  169. not universally agreed upon.
  170.  
  171.  
  172.    Classification - It's been suggested that the languages in this list
  173. should be arranged into categories, but to do so would be extremely
  174. difficult.  For every classification scheme there wlll be a large
  175. proportion of languages that do not fit.  The languages are therefore
  176. listed alphabetically, and in fact we think that this is the most useful
  177. organization.  You'll find that the following categories have been referred
  178. to in the list, but we must emphasize that most languages are not purely
  179. one or the other, and we are really categorizing language features.
  180.  
  181. Imperative language
  182.  
  183.     A language which operates by a sequence of commands that change the
  184. value of data elements.  Typified by assignments and iteration.
  185.  
  186. Declarative language
  187.  
  188.     A language which operates by making descriptive statements about data
  189. and relations between data.  The algorithm is hidden in the semantics of
  190. the language.  This category encompasses both applicative and logic
  191. languages.  Examples of declarative features are set comprehensions and
  192. pattern-matching statements.
  193.  
  194. Procedural language
  195.  
  196.     A language which states how to compute the result of a given problem. 
  197. Encompasses both imperative and functional languages.
  198.  
  199. Applicative language
  200.  
  201.     A language that operates by application of functions to values, with no
  202. side effects.  A functional language in the broad sense.
  203.  
  204. Functional language
  205.  
  206.     In the narrow sense, a functional language is one that operates by use
  207. of higher-order functions, building operators that manipulate functions
  208. directly without ever appearing to manipulate data.  Example: FP.
  209.  
  210. Definitional language
  211.  
  212.     An applicative language containing assignments interpreted as
  213. definitions.  Example: Lucid.
  214.  
  215. Single Assignment language
  216.  
  217.     An applicative language using assignments with the convention that a
  218. variable may appear on the left side of an assignment only once within the
  219. portion of the program in which it is active.
  220.  
  221. Dataflow language
  222.  
  223.     A language suitable for use on a dataflow architecture.  Necessary
  224. properties include freedom from side effects, and the equivalence of
  225. scheduling constraints with data dependencies.  Examples: Val, Id, SISAL,
  226. Lucid.
  227.  
  228. Logic language
  229.  
  230.     A logic language deals with predicates or relationships p(X,Y).  A
  231. program consists of a set of Horn clauses which may be:
  232.     facts - p(X,Y) is true
  233.     rules - p is true if q1 and q2 and ...qn are true
  234.     queries - is g1 and g2 and ...gn true?  (gi's are the goals.)
  235.     Further clauses are inferred using resolution.  One clause is selected
  236. containing p as an assumption, another containing p as a consequence, and p
  237. is eliminated between them.  If the two p's have different arguments they
  238. must be unified, using the subsitution with the fewest constraints that
  239. makes them the same.
  240.     Logic languages try alternative resolutions for each goal in
  241. succession, backtracking in a search for a common solution.  OR-parallel
  242. languages try alternative resolutions in parallel, while AND-parallel
  243. languages try to satisfy several goals in parallel.
  244.  
  245. Constraint language
  246.  
  247.     A language in which a problem is specified and solved by a series of
  248. constraining relationships.
  249.  
  250. Object-Oriented language
  251.  
  252.     A language in which data and the functions which access it are treated
  253. as a unit.
  254.  
  255. Concurrent language
  256.  
  257.     A concurrent language describes programs that may be executed in
  258. parallel.  This may be either
  259.     multiprogramming: sharing one processor
  260.     multiprocessing: separate processors sharing one memory
  261.     distributed
  262.  
  263. Concurrent languages differ in the way that processes are created:
  264.     coroutines - control is explicitly transferred - Simula I, SL5, BLISS,
  265. Modula-2.
  266.     fork/join - PL/I, Mesa
  267.     cobegin/coend - ALGOL 68, CSP, Edison, Argus
  268.     process declarations - DP, SR, Concurrent Pascal, Modula, PLITS, Ada
  269.  
  270. and the ways in which processes interact:
  271.     semaphores - ALGOL 68
  272.     conditional critical regions - Edison, DP, Argus
  273.     monitors - Concurrent Pascal, Modula
  274.     message passing - CSP, PLITS, Gypsy, Actors
  275.     remote procedure calls - DP, *Mod
  276.         rendezvous - Ada, SR
  277.         atomic transactions - Argus
  278.  
  279. Fourth generation language (4GL's)
  280.  
  281.     A very high-level language.  May use natural English or visual
  282. constructs.
  283.  
  284. Query language
  285.  
  286.     An interface to a database.
  287.  
  288. Specification language
  289.  
  290.     A formalism for expressing a hardware or software design.
  291.  
  292. Assembly language
  293.  
  294.     A symbolic representation of the machine language of a specific
  295. computer.
  296.  
  297. Intermediate language
  298.  
  299.     A language used as an intermediate stage in compilation.  May be either
  300. text or binary.
  301.  
  302. Metalanguage
  303.  
  304.     A language used for formal description of another language.
  305.  
  306.  
  307.  
  308.                            * * * * * * *
  309.  
  310.  
  311. 2.PAK - AI language with coroutines.  "The 2.PAK Language: Goals and
  312. Description", L.F. Melli, Proc IJCAI 1975.
  313.  
  314. 473L Query - English-like query language for Air Force 473L system.  Sammet
  315. 1969, p.665.
  316.  
  317. 9PAC - 709 PACkage.  1959.  Report generator for IBM 7090.  Sammet 1969,
  318. p.314.
  319.  
  320. *LISP - ("StarLISP")  Cliff Lasser, Jeff Mincy, J.P. Massar, Thinking
  321. Machines Corp.  A data-parallel extension of Common LISP for the Connection
  322. Machine.  "The Essential *LISP Manual", TM Corp 1986.
  323. ftp: think.com:/public/starsim-f19-sharfile, a *LISP simulator.
  324. info: customer-support@think.com
  325.       documentation-order@think.com
  326.  
  327. *MOD - ("StarMOD")  Concurrent language combining the modules of Modula and
  328. the communications of Distributed Processes.  "*MOD - A Language for
  329. Distributed Programming", R.P. Cook, IEEE Trans Soft Eng SE-6(6):563-571
  330. (Nov 1980).
  331.  
  332. A0 or A-0 - Possibly the first compiler ever.  Grace Hopper's team at
  333. Remington Rand, 1952, for the UNIVAC I or II.   Later internal versions: A-
  334. 1, A-2, A-3, AT-3.  AT-3 was released as MATH-MATIC.  Sammet 1969, p.12.
  335.  
  336. AADL - Axiomatic Architecture Description Language.  "AADL: A Net-Based
  337. Specification Method for Computer Architecture Design", W. Damm et al in
  338. Languages for Parallel Architectures, J.W. deBakker ed, Wiley 1989.
  339.  
  340. ABC - 
  341.  
  342.   1. Leo Geurts, Lambert Meertens, Steven Pemberton.  Simple interactive
  343. language designed for quick easy programming.  Includes a programming
  344. environment with syntax-directed editing, suggestions, persistent variables
  345. and multiple workspaces and infinite precision arithmetic.  "An Alternative
  346. Simple Language and Environment or PC's", S. Pemberton, IEEE Software
  347. 4(1):56-64 (Jan 1987).  "The ABC Programmer's Manual", Leo Geurts et al, P-
  348. H 1989.
  349. ftp: mcsun.eu.net and uunet.uu.net  Unix source, MS-DOS, Mac and Atari ST
  350. executables.
  351. info: abc@cwi.nl
  352. list: abc-list@cwi.nl maintained by Steven Pemberton <abc-list-
  353. request@cwi.nl>.
  354.  
  355.   2. (A="argument",B="basic value",C=?).  Intermediate code for the ABC
  356. abstract machine for implementation of functional languages.  P. Koopman,
  357. "Functional Programs as Executable Specifications", 1990. [?] 
  358.  
  359. ABCL/1 - An Object-Based Concurrent Language.  Yonezawa, U Tokyo 1986. 
  360. Language for the ABCL concurrent (MIMD) system.  Asynchronous message
  361. passing to objects.  Implementations in KCL and Symbolics LISP available
  362. from the author.  "ABCL: An Object-Oriented Concurrent System", A. Yonezawa
  363. ed, MIT Press 1990.
  364. ftp: camille.is.s.u-tokyo.ac.jp
  365. info: matsu@is.s.u-tokyo.ac.jp
  366.  
  367. ABCL/c+ - Concurrent object-oriented language, an extension of ABCL/1 based
  368. on C.  "An Implementation of An Operating System Kernel using Concurrent
  369. Object Oriented Language ABCL/c+", N. Doi et al in ECOOP '88, S. Gjessing
  370. et al eds, LNCS 322, Springer 1988.
  371.  
  372. ABCL/R - Yonezawa, Tokyo Inst Tech 1988.  Reflective concurrent object-
  373. oriented language.  "Reflection in an Object-Oriented Concurrent Language",
  374. T. Watanabe et al, SIGPLAN Notices 23(11):306-315 (Nov 1988).
  375.  
  376. ABLE - Simple language for accountants.  "ABLE, The Accounting Language,
  377. Programming and Reference Manual," Evansville Data Proc Center, Evansville,
  378. IN, Mar 1975.  Listed in SIGPLAN Notices 13(11):56 (Nov 1978).
  379.  
  380. ABSET - U Aberdeen.  Early declarative language.  "ABSET: A Programming
  381. Language Based on Sets", E.W. Elcock et al, Mach Intell 4, Edinburgh U
  382. Press, 1969, pp.467-492.
  383.  
  384. ABSYS - U Aberdeen.  Early declarative language, anticipated a number of
  385. features of Prolog.  "ABSYS: An Incremental Compiler for Assertions", J.M.
  386. Foster et al, Mach Intell 4, Edinburgh U Press, 1969, pp.423-429.
  387.  
  388. Accent - Very high level interpreted language with strings, tables, etc. 
  389. Strongly typed, remote function calls.  CaseWare Inc.
  390.  
  391. Access - English-like query language used in the Pick OS.
  392.  
  393. ACL - A Coroutine Language.  A Pascal-based implementation of coroutines. 
  394. "Coroutines", C.D. Marlin, LNCS 95, Springer 1980.
  395.  
  396. ACOM - Early system on IBM 705.  Listed in CACM 2(5):16 (May 1959).
  397.  
  398. ACP - Algebra of Communicating Processes.  "Algebra of Communicating
  399. Processes with Abstraction", J.A. Bergstra & J.W. Klop, Theor Comp Sci
  400. 37(1):77-121 (1985).  (compare CCS).
  401.  
  402. ACT++ - Concurrent extension of C++ based on actors.  "ACT++: Building a
  403. Concurrent C++ With Actors", D.G. Kafura TR89-18, VPI, 1989.
  404.  
  405. ACT ONE - Specification language.  "An Algebraic Specification Language
  406. with Two Levels of Semantics", H. Ehrig et al, Tech U Berlin 83-03 Feb
  407. 1983.
  408.  
  409. Act1 - An actor language, descendant of Plasma.  "Concurrent Object
  410. Oriented Programming in Act1", H. Lieberman in Object Oriented Concurrent
  411. Programming, A. Yonezawa et al eds, MIT Press 1987.
  412.  
  413. Act2 - An actor language.  "Issues in the Design of Act2", D. Theriault,
  414. TR728, MIT AI Lab, June 1983.
  415.  
  416. Act3 - High-level actor language, descendant of Act2.  Provides support for
  417. automatic generation of customers and for delegation and inheritance. 
  418. "Linguistic Support of Receptionists for Shared Resources", C. Hewitt et al
  419. in Seminar on Concurrency, S.D. Brookes et al eds, LNCS 197, Springer 1985,
  420. pp. 330-359.
  421.  
  422. Actalk - Briot, 1989.  Smalltalk-based actor language.  "Actalk: A Testbed
  423. for Classifying and Designing Actor Languages in the Smalltalk-80
  424. Environment", J-P. Briot, Proc ECOOP '89, pp.109-129.
  425.  
  426. Active Language I - Early interactive math, for XDS 930 at UC Berkeley. 
  427. "Active Language I", R. de Vogelaere in Interactive Systems for
  428. Experimental Applied Mathematics, A-P 1968.
  429.  
  430. Actor - Charles Duff, Whitewater Group ca 1986.  Object-oriented language
  431. for Microsoft Windows.  Pascal/C-like syntax.  Uses a token-threaded
  432. interpreter.  Early binding is an option.  "Actor Does More than Windows",
  433. E.R. Tello, Dr Dobb's J 13(1):114-125 (Jan 1988).
  434.  
  435. Actors - C. Hewitt.  A model for concurrency.  "Laws for Communicating
  436. Parallel Processes", C. Hewitt et al, IFIP 77, pp. 987-992, N-H 1977. 
  437. "ACTORS: A Model of Concurrent Computation in Distributed Systems", Gul A.
  438. Agha, Cambridge Press, MA, 1986.
  439.  
  440. Actra - An exemplar-based Smalltalk.  LaLonde et al, OOPSLA '86.
  441.  
  442. Actus - Pascal with parallel extensions, similar to the earlier Glypnir. 
  443. Parallel constants, index sets.  Descendants include Parallel Pascal,
  444. Vector C, and CMU's recent language PIE.  "A Language for Array and Vector
  445. Processors," R.H. Perrott, ACM TOPLAS 1(2):177-195 (Oct 1979).
  446.  
  447. Ada - (named for Ada Lovelace (1811-1852), arguably the world's first
  448. computer programmer.)  Jean Ichbiah's team at CII Honeywell, for the U.S.
  449. Department of Defense, 1980.  Ada is a large, complex block-structured
  450. language aimed primarily at embedded computer applications.  It has
  451. facilities for real-time response, concurrency, hardware access, and
  452. reliable run-time error handling.  In support of large-scale software
  453. engineering, it emphasizes strong typing, data abstraction and
  454. encapsulation.  The type system uses name equivalence and includes both
  455. subtypes and derived types.  Both fixed and floating point numerical types
  456. are supported.
  457.     Control flow is fully bracketed: if-then-elsif-end if, case-is-when-end
  458. case, loop-exit-end loop, goto.  Subprogram parameters are in, out, or
  459. inout.  Variables imported from other packages may be hidden or directly
  460. visible.  Operators may be overloaded, and so may enumeration literals. 
  461. There are user-defined exceptions and exception handlers.
  462.     An Ada program consists of a set of packages encapsulating data objects
  463. and their related operations.  A package has a separately compilable body
  464. and interface.  Ada permits generic packages and subroutines, possibly
  465. parametrized.
  466.     Ada programming places a heavy emphasis on multitasking.  Tasks are
  467. synchronized by the rendezvous, in which a task waits for one of its
  468. subroutines to be executed by another.  The conditional entry makes it
  469. possible for a task to test whether an entry is ready.  The selective wait
  470. waits for either of two entries or waits for a limited time.
  471.     "Reference Manual for the Ada Programming Language", ANSI/MIL STD
  472. 1815A, U.S. DoD (Jan 1983).
  473. info: adainfo@ajpo.sei.cmu.edu
  474. ftp repository: wsmr-simtel20.army.mil
  475. ftp info: ajpo.sei.cmu.edu
  476. ftp interpreters: stars.rosslyn.unisys.com:pub/ACE_8.0, for SunOS
  477. AdaEd compiler/interpreter for Unix, MS-DOS, Atari ST, Amiga
  478.     ab20.larc.nasa.gov:amiga/languages/ada/AdaEd1.11.0a.bin.lzh for Amiga
  479.     cs.nyu.edu:pub/adaed
  480.  
  481. Ada 83 - The original Ada, as opposed to Ada 9X.
  482.  
  483. Ada 9X - Revision of Ada currently under development.
  484. ftp: ajpo.sei.cmu.edu
  485. mailing list: Chris Anderson <anderson@uv4.eglin.af.mil> (Ada 9X Project
  486. Manager)
  487.  
  488. Ada++ - Object-oriented extension to Ada, implemented as a preprocessor.
  489.  
  490. ADAM - A DAta Management system.
  491.  
  492. Adaplex - An extension of Ada for functional databases.  "Adaplex:
  493. Rationale and Reference Manual 2nd ed", J.M. Smith et al, Computer Corp
  494. America, Cambridge MA, 1983.
  495.  
  496. ADAPT - Subset of APT.  Sammet 1969, p.606.
  497.  
  498. ADD 1 TO COBOL GIVING COBOL - Bruce Clement.  Tongue-in-cheek suggestion
  499. for an object-oriented COBOL.  SIGPLAN Notices 27(4):90-91 (Apr 1992).
  500.  
  501. ADES - Early system on IBM 704.  Listed in CACM 2(5):16 (May 1959). 
  502. Version: ADES II.
  503.  
  504. ADL -
  505.  
  506.   1. Adventure Definition Language.  Ross Cunniff <cunniff@fc.hp.com> & Tim
  507. Brengle, 1987.  An adventure language, semi-object-oriented with LISP-like
  508. syntax.  A superset of DDL.  Available for Unix, MS-DOS, Amiga and Acorn.
  509. ftp: gatekeeper.dec.com: pub/games/comp.sources.games/volume2
  510.     wuarchive.wustl.edu: /systems/amiga/fish/fish/f0/ff091
  511.  
  512.   2. Ada Development Language.  R.A. Lees, 1989.
  513.  
  514. AdLog - Adds a Prolog layer to Ada.  "AdLog, An Ada Components Set to Add
  515. Logic to Ada", G. Pitette, Proc Ada-Europe Intl Conf Munich, June 1988.
  516.  
  517. ADM - Picture query language, extension of Sequel2.  "An Image-Oriented
  518. Database System", Y. Takao et al, in Database Techniques for Pictorial
  519. Applications, A. Blaser ed, pp.527-538.
  520.  
  521. ADS - Expert system.
  522.  
  523. ADVSYS - David Betz, 1986.  An adventure language, object-oriented and
  524. LISP-like.
  525. ftp: uunet.uu.net:comp.sources.games/Volume2
  526.  
  527. AE - Application Executive.  Brian Bliss <bliss@sp64.csrd.uiuc.edu>  An
  528. embeddable language, written as a C interpreter.
  529. ftp: sp2.csrd.uiuc.edu:ae.tex.Z
  530.  
  531. AED - Automated Engineering Design (aka ALGOL Extended for Design).  MIT ca
  532. 1965 by Doug Ross (now at Softech).  Systems language for IBM 7090 and 360,
  533. an extension of ALGOL-60 with records, pointers, and dynamic allocation. 
  534. DYNAMO II was written in AED.  "The Automated Engineering Design (AED)
  535. Approach to Generalized Computer-Aided Design", D.T. Ross, Proc ACM 22nd
  536. Natl Conf, 1967.  Sammet 1969 and 1978.  Versions: AED-0, AED-1, AED-JR.
  537.  
  538. Aeolus - Concurrent language with atomic transactions.  "Rationale for the
  539. Design of Aeolus", C. Wilkes et al, Proc IEEE 1986 Intl Conf Comp Lang,
  540. IEEE 1986, pp.107-122.
  541.  
  542. AESOP - An Evolutionary System for On-line Programming.  Early interactive
  543. query system with light pen for IBM 1800.  "AESOP: A Final Report: A
  544. Prototype Interactive Information Control System", J.K. Summers et al, in
  545. Information System Science and Technology, D. Walker ed, 1967.  Sammet
  546. 1969, p.703.
  547.  
  548. AFAC - Early system on IBM 704.  Listed in CACM 2(5):16 (May 1959).
  549.  
  550. AGORA - Distributed object-oriented language.[?]
  551.  
  552. AHPL - A Hardware Programming Language.  Hill & Peterson.  A register-level
  553. language, some of whose operators resemble APL.  "Digital Systems: Hardware
  554. Organization and Design", F. Hill et al, Wiley 1987.  HPSIM2: a function-
  555. level simulator, available from Engrg Expt Sta, U Arizona.
  556.  
  557. AIDA - 
  558.  
  559.   1. M. Gfeller.  A functional dialect of Dictionary APL.  "APL Arrays and
  560. Their Editor", M. Gfeller, SIGPLAN Notices 21(6):18-27 (June 1986) and
  561. SIGAPL Conf Proc [?]
  562.  
  563.   2. Karlsruhe, 1980.  An intermediate representation language for Ada, was
  564. merged with TCOL.Ada to form Diana.
  565.  
  566. AIMACO - AIr MAterial COmmand compiler.  Modification of FLOW-MATIC. 
  567. Supplanted by COBOL.  Sammet 1969, p.378.
  568.  
  569. AKCL - Austin Kyoto Common LISP.  Bill Schelter.  Improvements to KCL.
  570. ftp: rascal.ics.utexas.edu
  571.  
  572. AKL - Andorra Kernel Language.  Successor of KAP.  "Programming Paradigms
  573. of the Andorra Kernel Language", S. Janson <sverker@sics.se> et al in Logic
  574. Programming: Proc 1991 Intl Symp, MIT Press 1991.  Prototype implementation
  575. available from the author.
  576.  
  577. AL - Assembly Language.  Stanford U, 1970's.  Language for industrial
  578. robots.  "The AL Language for an Intelligent Robot", T. Binford in Langages
  579. et Methods de Programation des Robots Industriels, pp.73-88, IRIA Press
  580. 1979.  "AL User's Manual", M.S. Mujtaba et al, Stanford AI Lab, Memo
  581. AIM-323 (Jan 1979).
  582.  
  583. ALADIN - 
  584.  
  585.   1. A Language for Attributed DefINitions.  A language for formal
  586. specification of attributed grammars.  Input language for the GAG compiler
  587. generator.  Applicative, strongly typed.  "GAG: A Practical Compiler
  588. Generator", U. Kastens et al, LNCS 141, Springer 1982.
  589.  
  590.   2. Interactive math for IBM 360.  "A Conversational System for
  591. Engineering Assistance: ALADIN", Y. Siret, Proc Second Symp Symb Algebraic
  592. Math, ACM Mar 1971.
  593.  
  594. ALAM - Symbolic math, especially for General Relativity.  "ALAM
  595. Programmer's Manual", Ray D'Inverno, 1970.  (See CLAM).
  596.  
  597. ALC - Assembly Language Compiler.  Alternative name for IBM 360 assembly
  598. language.  (cf. BAL).
  599.  
  600. ALCOR - Subset of ALGOL.  Sammet 1969, p.180.
  601.  
  602. Aldat - Database language, based on extended algebra.  Listed by M.P.
  603. Atkinson & J.W. Schmidt in a tutorial in Zurich, 1989. [?]
  604.  
  605. ALDES - ALgorithm DEScription.  "The Algorithm Description Language ALDES",
  606. R.G.K. Loos, SIGSAM Bull 14(1):15-39 (Jan 1976).
  607.  
  608. ALDiSP - Applicative Language for Digital Signal Processing.  1989, TU
  609. Berlin.  Functional language with special features for real-time I/O and
  610. numerical processing.  "An Applicative Real-Time Language for DSP-
  611. Programming Supporting Asynchronous Data-Flow Concepts", M. Freericks
  612. <mfx@cs.tu-berlin.de> in Microprocessing and Microprogramming 32, N-H 1991.
  613.  
  614. ALEC - A Language with an Extensible Compiler.  Implemented using RCC on an
  615. ICL 1906A.  "ALEC - A User Extensible Scientific Programming Language",
  616. R.B.E. Napper et al, Computer J 19(1):25-31.
  617.  
  618. ALEPH -
  619.  
  620.   1. A Language Encouraging Program Hierarchy.  ca 1975.  "On the Design of
  621. ALEPH", D. Grune, CWI, Netherlands 1986.
  622.  
  623.   2. Peter Henderson ca. 1970.  Formal semantics.  CACM 15(11):967-973 (Nov
  624. 1972).
  625.  
  626. Alex -
  627.  
  628.   1. Stephen Crawley <sxc@itd.dtso.oz.au>, Defence Science & Tech Org,
  629. Australia.  Under development.  Polymorphic with ADT's, type inference,
  630. inheritance.
  631.  
  632.   2. ISWIM-like language with exception handling.  "An Exception Handling
  633. Construct for Functional Languages", M. Brez et al, in Proc ESOP88, LNCS
  634. 300, Springer 1988.
  635.  
  636. Alexis - Alex Input Specification.  Input language for the scanner
  637. generator Alex.  "Alex: A Simple and Efficient Scanner Generator", H.
  638. Mossenbock, SIGPLAN Notices 21(5), May 1986.
  639.  
  640.  
  641. ALF - Algebraic Logic Functional language.  WAM-based language with
  642. narrowing/rewriting.  Horn clauses with equality.  Any functional
  643. expression can be used in a goal.
  644. ftp: ftp.germany.eu.net:pub/programming/languages/LogicFunctional:alf*
  645. info: Rudolf Opalla <opalla@julien.informatik.uni-dortmund.de>
  646.  
  647. Alfl - Paul Hudak <hudak-paul@cs.yale.edu>, Yale 1983.  Functional, weakly
  648. typed, lazy.  Implemented as a preprocessor to the Orbit Scheme compiler,
  649. by transforming laziness into force-and-delay.  "Alfl Reference Manual and
  650. Programmer's Guide", P. Hudak, YALEU/DCS/RR322, Yale U, Oct 1984.  (See
  651. ParAlfl).
  652.  
  653. ALGEBRAIC - Early system on MIT's Whirlwind.  Listed in CACM 2(5):16 (May
  654. 1959).
  655.  
  656. ALGOL 58 - See IAL.
  657.  
  658. ALGOL 60 - ALGOrithmic Language.  Designed for scientific computations,
  659. ALGOL 60 was small and elegant.  It was the first language to be described
  660. in BNF.  There were three lexical representations: reference, hardware and
  661. publication.
  662.     Only three basic types: integer, real and boolean.  Arrays had lower
  663. bounds.  Dynamic arrays.  Strong typing.  Data hiding with 'own' variables. 
  664. No user-defined types.
  665.     ALGOL 60 was the first block-structured language, with nested
  666. procedures and blocks, nested syntax, compound statement with begin-end. 
  667. Keywords.  Conditional expression.  Introduced :=, if-then-else, very
  668. general 'for' loops.  Switch declaration (an array of statement labels)
  669. generalizing FORTRAN's computed goto. Procedures were recursive, and
  670. parameters were pass-by-value and pass-by-name.
  671. "Report on the Algorithmic Language ALGOL 60", Peter Naur ed, CACM
  672. 3(5):299-314 (May 1960).
  673.  
  674. ALGOL 60 Modified - "A Supplement to the ALGOL 60 Revised Report", R.M.
  675. DeMorgan et al, Computer J 19(4):364 and SIGPLAN Notices 12(1) 1977.  
  676. Erratum in Computer J 21(3):282 (Aug 1978) applies to both.
  677.  
  678. ALGOL 60 Revised - "Revised Report on the Algorithmic Language ALGOL 60",
  679. Peter Naur ed, CACM 6(1):1-17 (Jan 1963).
  680.  
  681. ALGOL 68 - Adriaan van Wijngaarden et al.  The communication and efficient
  682. execution of algorithms.  By contrast with ALGOL 60, ALGOL 68 was large and
  683. complex, and posed difficulties for both implementors and users.
  684.     Structural equivalence.  Automatic type conversion.  Flexible arrays. 
  685. No abstract data types.
  686.     if-then-elif-fi, for-from-by-to-while-do-od, integer case statement
  687. with 'out' clause, skip statement, generalized loops, goto.
  688.     Blocks, procedures and user-defined operators.  Procedure parameters. 
  689. No separate compilation.  Concurrent execution (cobegin/coend) and
  690. semaphores.  Generators heap and loc for dynamic allocation.
  691.  
  692. ALGOL 68 Revised - "Revised Report on the Algorithmic Language ALGOL 68,"
  693. A. Van Wijngaarden et al, Acta Informatica 5:1-236 (1975), also Springer
  694. 1976, and SIGPLAN Notices 12(5):1-70 (May 1977).
  695.  
  696. ALGOL 68C - Variant of ALGOL 68 developed at Cambridge U Computing Lab in
  697. the 70's.  Used to implementation language for the CHAOS OS for the CAP
  698. capability computer.
  699.  
  700. ALGOL 68RS - An extension of ALGOL 68 which supports function closures. 
  701. Royal Signals Research Establishment, Malvern UK.
  702.  
  703. ALGOL 68S - ALGOL 68 Subset.  "A Sublanguage of ALGOL 68", P.G. Hibbard,
  704. SIGPLAN Notices 12(5) (May 1977).  Shareware compiler from Charles Lindsey
  705. <chl@cs.man.ac.uk>, Version 2.3 for Sun3's under OS4.x and Atari under
  706. GEMDOS (or potentially other machines supported by the Amsterdam Compiler
  707. Kit).
  708.  
  709. ALGOL C - Clive Feather, Cambridge U, ca. 1981.  Variant of ALGOL 60; added
  710. structures and exception handling.  Designed for beginning students.
  711.  
  712. ALGOL W - Derivative of ALGOL 60.  "A Contribution to the Development of
  713. Algol", N. Wirth, CACM 9(6):413-431 (June 1966).
  714.  
  715. ALGOL X - Generic term for the successor to ALGOL 60.  The three designs
  716. proposed were by Wirth, Seegmuller and van Wijngaarden.  Sammet 1969,
  717. p.194.
  718.  
  719. ALGY - Early language for symbolic math.  Sammet 1969, p.520.
  720.  
  721. ALJABR - An implementation of MACSYMA for the Mac.  Fort Pond Research.
  722. info: aljabr@fpr.com
  723.  
  724. ALLOY - Combines functional, object-oriented and logic programming ideas,
  725. suitable for massively parallel systems.  "The Design and Implementation of
  726. ALLOY, a Parallel Higher Level Programming Language", Thanasis Mitsolides
  727. <mitsolid@cs2.nyu.edu>, PhD Thesis NYU 1990.  Version: ALLOY 2.0
  728. ftp: cs.nyu.edu:pub/local/alloy.
  729.  
  730. ALM - Assembly Language for Multics.  Language on the GE645.  Critical
  731. portions of the Multics kernel were written in ALM.
  732.  
  733. ALP - List-processing extension of Mercury Autocode.  "ALP, An Autocode
  734. List-Processing Language", D.C. Cooper et al, Computer J 5:28-31 (1962).
  735.  
  736. ALPAK - Subroutine package used by ALTRAN.  "The ALPAK System for
  737. Nonnumerical Algebra on a Digital Computer", W.S. Brown, Bell Sys Tech J
  738. 42:2081 (1963).  Sammet 1969, p.502.
  739.  
  740. Alphard - Pascal-like.  Introduced the notion of forms.  "Abstraction and
  741. Verification in Alphard: Defining and Specifying Iteration and Generators",
  742. Mary Shaw, CACM 20(8):553-563 (Aug 1977).
  743.  
  744. ALPS - 
  745.  
  746.   1. Richard V. Andree, U Oklahoma.  Early interpreted algebraic language
  747. for Bendix G15, said to have preceded and influenced development of BASIC.
  748.  
  749.   2. Parallel logic language.  "Synchronization and Scheduling in ALPS
  750. Objects", P. Vishnubhotia, Proc 8th Intl Conf Distrib Com Sys, IEEE 1988,
  751. pp.256-264.
  752.  
  753. ALTAC - An extended FORTRAN II for Philco 2000, built on TAC.  Sammet 1969,
  754. p.146.
  755.  
  756. ALTRAN - W.S. Brown, Bell Labs, ca. 1968.  A FORTRAN extension for rational
  757. algebra.  "The ALTRAN System for Rational Function Manipulation - A
  758. Survey", A.D. Hall, CACM 14(8):517-521 (Aug 1971).
  759.  
  760. Amber -
  761.  
  762.   1. Adds CSP-like concurrency to ML.  Similar to Galileo.  Concurrency,
  763. multiple inheritance, persistence.  Programs must be written in two type
  764. faces, roman and italics!  Both static and dynamic types.  "Amber", L.
  765. Cardelli, TR Bell Labs 1984.  Implementation for Mac.
  766.  
  767.   2. U Washington, late 80's.  An object-oriented distributed language
  768. based on a subset of C++.
  769.  
  770. AMBIT - Algebraic Manipulation by Identity Translation (also claimed:
  771. "Acronym May Be Ignored Totally").  C. Christensen, Massachusetts Computer
  772. Assocs, 1964.  An early pattern-matching language aimed at algebraic
  773. manipulation.  Sammet 1969, pp.454-457.
  774.  
  775. AMBIT/G - (G for graphs).  "An Example of the Manipulation of Directed
  776. Graphs in the AMBIT/G Programming Language", C. Christensen, in Interactive
  777. Systems for Experimental Applied Mathematics, M. Klerer et al, eds,
  778. Academic Press 1968, pp.423-435.
  779.  
  780. AMBIT/L - (L for lists).  List handling, allows pattern matching rules
  781. based on two-dimensional diagrams.  "An Introduction to AMBIT/L, A
  782. Diagrammatic Language for List Processing", Carlos Christensen, Proc 2nd
  783. ACM Symp Symb and Alg Manip (Mar 1971).
  784.  
  785. AMBIT/S - (S for strings). 
  786.  
  787. AMBUSH - Language for linear programming problems in a materials-
  788. processing/transportation network.  "AMBUSH - An Advanced Model Builder for
  789. Linear Programming", T.R. White et al, National Petroleum Refiners Assoc
  790. Comp Conf (Nov 1971).
  791.  
  792. AML - IBM, 1980's.  High-level language for industrial robots.  "AML: A
  793. Manufacturing Language", R.H. Taylor et al, Inst J Robot Res 1(3):19-43.
  794.  
  795. AML/E - AML Entry.  Simple version of AML, implemented on PC, with graphic
  796. display of the robot position.
  797.  
  798. AMP - Algebraic Manipulation Package.  Symbolic math, written in Modula-2,
  799. seen on CompuServe.
  800.  
  801. AMPL - "AMPL: Design, Implementation and Evaluation of a Multiprocessing
  802. Language", R. Dannenberg, CMU 1981.  "Loglan Implementation of the AMPL
  803. Message Passing System", J. Milewski SIGPLAN Notices 19(9):21-29 (Sept
  804. 1984).
  805.  
  806. AMPPL-II - Associative Memory Parallel Processing Language.  Early 70's.
  807.  
  808. AMTRAN - Automatic Mathematical TRANslation.  NASA Huntsville, 1966.  For
  809. IBM 1620, based on Culler-Fried System, requires special terminal. 
  810. "AMTRAN: An Interactive Computing System", J. Reinfelds, Proc FJCC 37:537-
  811. 542, AFIPS (Fall 1970).
  812.  
  813. ANCP - Early system on Datatron 200 series.  Listed in CACM 2(5):16 (May
  814. 1959).
  815.  
  816. ANDF - Architecture Neutral Distribution Format.  OSF's request for a
  817. universal intermediate language, allowing software to be developed and
  818. distributed in a single version, then installed on a variety of hardware. 
  819. "Architecture Neutral Distribution Format: A White Paper", Open Software
  820. Foundation, Nov 1990.  (See UNCOL).
  821. list: andf-tech@osf.org
  822.  
  823. Andorra-I - The OR parallelism of Aurora plus the AND parallelism of
  824. Parlog.  "Andorra-I: A Parallel Prolog System that Transparently Exploits
  825. both And- and Or-Parallelism", V.S Costa et al, SIGPLAN Notices 26(7):83-93
  826. (July 1991).
  827.  
  828. Andorra-Prolog - "Andorra-Prolog: An Integration of Prolog and Committed
  829. Choice Languages", S. Haridi et al, Intl Conf Fifth Gen Comp Sys 1988, ICOT
  830. 1988.
  831.  
  832. Animus - "Constraint-Based Animation: The Implementation of Temporal
  833. Constraints in the Animus System", R. Duisberg, PhD Thesis U Washington
  834. 1986.
  835.  
  836. Anna - ANNotated Ada.  ca. 1980.  Adds semantic assertions in the form of
  837. Ada comments.  "ANNA - A Language for Annotating Ada Programs", David
  838. Luckham et al, Springer 1987.
  839. ftp: anna.stanford.edu
  840.  
  841. ANSI C - Revision of C, adding function prototypes, structure passing and
  842. assignment, and a standard set of library functions.  ANSI X3.159-1989.
  843.  
  844. ANSI C++ - X3J16 committee.  (They're workin' on it.)
  845.  
  846. ANSI FORTH - Soon-to-be-adopted standard.
  847.  
  848. APAL - Array Processor Assembly Language.  For the DAP parallel machine.
  849.  
  850. APAREL - A PArse REquest Language.  PL/I extension to provide BNF parsing
  851. routines, for IBM 360.  "APAREL: A Parse Request Language", R.W. Balzer et
  852. al, CACM 12(11) (Nov 1969).
  853.  
  854. APDL - Algorithmic Processor Description Language.  ALGOL-60-like language
  855. for describing computer design, for CDC G-21.  "The Description,
  856. Simulation, and Automatic Implementation of Digital Computer Processors",
  857. J.A. Darringer, Ph.D Thesis EE Dept, CMU May 1969.
  858.  
  859. APL - A Programming Language.  Ken Iverson Harvard U 1957-1960.  Designed
  860. originally as a notation for the concise expression of mathematical
  861. algorithms.  Went unnamed and unimplemented for many years.  Finally a
  862. subset APL\360 was implemented in 1964.  APL is an interactive
  863. array-oriented language with many innovative features, written using a non-
  864. standard character set.  It is dynamically typed with dynamic scope.  All
  865. operations are either dyadic infix or monadic prefix, and all expressions
  866. are evaluated from right to left.  The only control structure is branch. 
  867. APL introduced several functional forms but is not purely functional.  "A
  868. Programming Language", Kenneth E. Iverson, Wiley, 1962.  Versions: APL\360,
  869. APL SV, VS APL, Sharp APL, Sharp APL/PC, APL*PLUS, APL*PLUS/PC, APL*PLUS/PC
  870. II, MCM APL, Honeyapple, and DEC APL.
  871. (See Iverson's Language).
  872.  
  873. APL2 - IBM.  An APL extension with nested arrays.  "APL2 Programming:
  874. Language Reference", IBM Aug 1984.  Order No. SH20-9227-0.
  875.  
  876. APLGOL - H-P?  An APL with ALGOL-like control structure.
  877.  
  878. APPLE - Revision of APL for the Illiac IV.
  879.  
  880. Applesoft BASIC - Version of BASIC on Apple computers.
  881.  
  882. APPLOG - Unifies logic and functional programming.  "The APPLOG Language",
  883. S. Cohen in Logic Programming, deGroot et al eds, P-H 1986, pp.39-276.
  884.  
  885. APT - Automatically Programmed Tools.  For numerically controlled machine
  886. tools.  "APT Part Programming", McGraw-Hill.  Versions: APT II (IBM 704,
  887. 1958), APT III (IBM 7090, 1961).  Sammet 1969, p.605.
  888.  
  889. APX III - Early system on Datatron 200 series.  Listed in CACM 2(5):16 (May
  890. 1959).
  891.  
  892. AQL - Picture query language, extension of APL.  "AQL: A Relational
  893. Database Management System and Its Geographical Applications", F. Antonacci
  894. et al, in Database Techniques for Pictorial Applications, A. Blaser ed,
  895. pp.569-599.
  896.  
  897. Arctic - Real-time functional language, used for music synthesis.  "Arctic:
  898. A Functional Language for Real-Time Control", R.B. Dannenberg, Conf Record
  899. 1984 ACM Symp on LISP and Functional Prog, ACM.
  900.  
  901. ARES - Pictorial query language.  "A Query Manipulation System for Image
  902. Data Retrieval", T. Ichikawa et al, Proc IEEE Workshop Picture Data
  903. Description and Management, Aug 1980, pp.61-67.
  904.  
  905. Ariel - Array-oriented language for CDC 6400.  "Ariel Reference Manual", P.
  906. Devel, TR 22, CC UC Berkeley, Apr 1968.
  907.  
  908. Argus - LCS, MIT.  A successor to CLU.  Supports distributed programming
  909. through guardians (like monitors, but can be dynamically created) and
  910. atomic actions (indivisible activity).  cobegin/coend.  "Argus Reference
  911. Manual", B. Liskov et al., TR-400, MIT/LCS, 1987.  "Guardians and Actions:
  912. Linguistic Support for Robust, Distributed Programs", B. Liskov
  913. <liskov@lcs.mit.edu> et al, TOPLAS 5(3):381-404 (1983).
  914.  
  915. Ariel - An array-oriented language.  "A New Survey of the Ariel Programming
  916. Language", P. Deuel, TR 4, Ariel Consortium, UC Berkeley (June 1972).
  917.  
  918. ARITH-MATIC - Alternate name for A-3.
  919.  
  920. ART - Real-time functional language, timestamps each data value when it was
  921. created.  "Applicative Real-Time Programming", M. Broy, PROC IFIP 1983, N-
  922. H.
  923.  
  924. ARTSPEAK - Early simple language for plotter graphics.  "The Art of
  925. Programming, ARTSPEAK", Henry Mullish, Courant Inst (Nov 1974).
  926.  
  927. ASF - An algebraic specification language.  "Algebraic Specification", J.A.
  928. Bergstra et al, A-W 1989.
  929.  
  930. Ashmedai - Michael Levine <levine@cpwsca.psc.edu>  Symbolic math package. 
  931. Had an influence on SMP and FORM.  Versions for Univac 1108 and VAX VMS.
  932.  
  933. ASIS - Ada Semanic Interface Specification.  An intermediate representation
  934. for Ada.  (See Diana.)
  935. info: sblake@telesoft.com
  936.  
  937. ASL - Algebraic Specification Language.  "Structured Algebraic
  938. Specifications: A Kernel Language", M. Wirsing, Theor Comput Sci 42,
  939. pp.123-249, Elsevier 1986.
  940.  
  941. ASM - Assembly language on CP/M machines (and a lot of others).
  942.  
  943. ASN-1 - Abstract Syntax Notation.  Data description language used by the
  944. Natl Center for Biotechnology Information.
  945.  
  946. ASP - Query language?  Sammet 1969, p.702.
  947.  
  948. ASPOL - A Simulation Process-Oriented Language.  An ALGOL-like language for
  949. computer simulation.  "Process and Event Control in ASPOL", M.H.
  950. MacDougall, Proc Symp on Simulation of Computer Systems, NBS (Aug 1975).
  951.  
  952. ASPEN - Toy language for teaching compiler construction.  "ASPEN Language
  953. Specifications", T.R. Wilcox, SIGPLAN Notices 12(11):70-87 (Nov 1977).
  954.  
  955. ASPIK - Multiple-style specification language.  "Algebraic Specifications
  956. in an Integrated Software Development and Verification System", A. Voss,
  957. Diss, U Kaiserslautern, 1985.
  958.  
  959. Aspirin - MITRE Corp.  A language for the description of neural networks. 
  960. For use with the MIGRAINES neural network simulator.  Version: 6.0
  961. ftp:ftp.cognet.ucla.edu:alexis/am6.tar.Z
  962.  
  963. ASPLE - Toy language.  "A Sampler of Formal Definitions", M. Marcotty et
  964. al, Computing Surveys 8(2):191-276 (Feb 1976).
  965.  
  966. ASSEMBLY - Early system on IBM 702.  Listed in CACM 2(5):16 (May 1959).
  967.  
  968. ASTAP - Advanced STatistical Analysis Program.  Analyzing electronic
  969. circuits and other networks.  "Advanced Statistical Analysis Program
  970. (ASTAP) Program Reference Manual", SH-20-1118, IBM, 1973.
  971.  
  972. Astral - Based on Pascal, never implemented.  "ASTRAL: A Structured and
  973. Unified Approach to Database Design and Manipulation", T. Amble et al, in
  974. Proc of the Database Architecure Conf, Venice, June 1979.
  975.  
  976. AT-3 - Original name of MATH-MATIC.  Sammet 1969, p.135.
  977.  
  978. ATLAS - Abbreviated Test Language for Avionics Systems.  _THE_ mil-spec
  979. language for automatic testing of avionics equipment.  Replaced/upgraded
  980. Gaelic and several other test languages.  "IEEE Standard ATLAS Test
  981. Language", IEEE Std 416-1976.
  982.  
  983. Atlas Autocode - Autocode for the Ferranti Atlas, which may have been the
  984. first commercial machine with hardware-paged virtual memory.  (See
  985. Autocode).
  986.  
  987. Atlas Commercial Language - 
  988.  
  989. ATOLL - Acceptance, Test Or Launch Language.  Language used for automating
  990. the checkout and launch of Saturn rockets.  "SLCC ATOLL User's Manual", IBM
  991. 70-F11-0001, Huntsville AL Dec 1970.
  992.  
  993. A'UM - K. Yoshida and T. Chikayama <chik@icot.or.jp>.  Built on top of KL1. 
  994. "A'UM - A Stream-based Concurrent Logic Object-Oriented Language", K.
  995. Yoshida et al, Proc 3rd Intl Conf Fifth Gen Comp Sys, Springer 1988,
  996. pp.638-649.
  997.  
  998. Aurora - "The Aurora Or-Parallel Prolog System", E. Lusk et al, Proc 3rd
  999. Intl Conf on Fifth Generation Comp Systems, pp. 819-830, ICOT, A-W 1988.
  1000.  
  1001. AUTOCODER - Alick E. Glennie, 1952.  Possibly the first primitive compiler,
  1002. it translated symbolic statements into machine language for the Manchester
  1003. Mark I computer.  Autocoding came to be a generic term for symbolic
  1004. assembly language programming, and versions of Autocode were developed for
  1005. many machines: Ferranti Atlas, Titan, Mercury and Pegasus, and IBM 702 and
  1006. 705.
  1007.  
  1008. AUTOGRAF - Describing bar charts.  "User's Manual for AUTOGRAF", Cambridge
  1009. Computer Assoc (Dec 1972).
  1010.  
  1011.  
  1012. From billk@cs.ukans.edu Fri Feb  5 05:40:56 1993
  1013. Received: from mars.cs.ukans.edu by cogsci.Berkeley.EDU (5.63/1.29)
  1014.     id AA25978; Fri, 5 Feb 93 05:40:52 -0800
  1015. From: Bill Kinnersley <billk@cs.ukans.edu>
  1016. Date: Fri, 5 Feb 1993 07:40:03 CST
  1017. X-Mailer: Mail User's Shell (7.2.5 10/14/92)
  1018. To: muir@cogsci.Berkeley.EDU
  1019. Subject: Part 2
  1020. Message-Id:  <9302050740.aa07594@cs.ukans.edu>
  1021.  
  1022. AUTOGRP - AUTOmated GRouPing system.  Interactive statistical analysis.  An
  1023. extension of CML.  "AUTOGRP: An Interactive Computer System for the
  1024. Analysis of Health Care Data", R.E. Mills et al, Medical Care 14(7) (Jul
  1025. 1976).
  1026.  
  1027. Autolisp - Dialect of LISP used by the Autocad CAD package, Autodesk,
  1028. Sausalito, CA.
  1029.  
  1030. AUTOMATH - Eindhoven, Netherlands.  A very high level language for writing
  1031. proofs.  "The Mathematical Language AUTOMATH, Its Usage and Some of its
  1032. Extensions", N.G. deBruijn, in Symp on Automatic Demonstration, LNM 125,
  1033. Springer 1970.
  1034.  
  1035. Autopass - "Autopass: An Automatic Programming System for Computer-
  1036. Controlled Mechanical Assembly", L.I. Lieberman et al, IBM J Res Dev
  1037. 21(4):321-333 (1979).
  1038.  
  1039. AUTO-PROMPT - Numerical control language from IBM for 3-D milling.  Sammet
  1040. 1969, p.606.
  1041.  
  1042. Autostat - "Autostat: A Language for Statistical Programming", A.S. Douglas
  1043. et al, Computer J 3:61 (1960).
  1044.  
  1045. Avalon/C++ - 1986.  Fault-tolerant distributed systems, influenced by
  1046. Argus.  A concurrent extension of C++ with servers and transactions. 
  1047. "Camelot and Avalon: A Distributed Transaction Facility", J.L. Eppinger et
  1048. al, Morgan Kaufmann 1990.
  1049.  
  1050. Avalon/Common LISP - Prototype only.  "Reliable Distributed Computing with
  1051. Avalon/Common LISP", S.M. Clamen et al, CMU-CS-89-186 and Proc Intl Conf on
  1052. Computer Languages, Mar 1990.
  1053.  
  1054. AXIOM - IBM.  Commercially available subset of Scratchpad.
  1055.  
  1056. AXLE - An early string processing language.  Program consists of an
  1057. assertion table which specifies patterns, and an imperative table which
  1058. specifies replacements.  "AXLE: An Axiomatic Language for String
  1059. Transformations", K. Cohen et al, CACM 8(11):657-661 (Nov 1965).
  1060.  
  1061. AWK - Aho Weinberger Kernighan.  1978.  Text processing/macro language. 
  1062. "The AWK Programming Language" A. Aho, B. Kernighan, P. Weinberger, A-W
  1063. 1988.  (See Bawk, Gawk, Mawk, Nawk, Tawk.)
  1064.  
  1065. B - 
  1066.  
  1067.   1. Thompson, 1970.  A systems language written for Unix on the PDP-11. 
  1068. Derived from BCPL, and very similar to it except for syntax.  B was the
  1069. predecessor of C.  "The Programming Language B", S.C. Johnson & B.W.
  1070. Kernighan, CS TR 8, Bell Labs (Jan 1973).
  1071.  
  1072.   2. L. Meertens & S. Pemberton.  Simple interactive programming language,
  1073. the predecessor of ABC[1].  "Draft Proposal for the B Language", Lambert
  1074. Meertens, CWI, Amsterdam, 1981.
  1075. ftp: minnehaha.rhrk.uni-kl.de:pub/languages/B.tar.Z
  1076.  
  1077. B-0 - Original name of FLOW-MATIC, Remington Rand.  UNIVAC I or II ca.
  1078. 1958.
  1079.  
  1080. BABEL - 
  1081.  
  1082.   1. Mentioned in The Psychology of Computer Programming, G.M. Weinberg,
  1083. Van Nostrand 1971, p.241.
  1084.  
  1085.   2. Higher-order functional plus first-order logic language.  "Graph-Based
  1086. Implementation of a Functional Logic Language", H. Kuchen et al, Proc ESOP
  1087. 90, LNCS 432, Springer 1990, pp.271-290.  "Logic Programming with Functions
  1088. and Predicates: The Language BABEL", Moreno-Navarro et al, J Logic Prog
  1089. 12(3) (Feb 1992).
  1090.  
  1091. BACAIC - Boeing Airplane Company Algebraic Interpreter Coding system. 
  1092. Pre-FORTRAN system on the IBM 701, IBM 650.
  1093.  
  1094. BAL - Basic Assembly Language.  What most people called IBM 360 assembly
  1095. language.  (See ALC).
  1096.  
  1097. BALGOL - ALGOL on Burroughs 220.  Sammet 1969, p.174.
  1098.  
  1099. BALITAC - Early system on IBM 650.  Listed in CACM 2(5):16 (May 1959).
  1100.  
  1101. BALM - Block and List Manipulation.  Harrison, 1970.  Extensible language
  1102. with LISP-like features and ALGOL-like syntax, for CDC 6600.  "The Balm
  1103. Programming Language", Malcolm Harrison, Courant Inst (May 1973).
  1104.  
  1105. BAP - Early system on IBM 701.  Listed in CACM 2(5):16 (May 1959).
  1106.  
  1107. Baroque - Boyer & Moore, 1972.  Early logic programming language. 
  1108. "Computational Logic: Structure Sharing and Proof of program Properties",
  1109. J. Moore, DCL Memo 67, U Edinburgh 1974.
  1110.  
  1111. bash - Bourne Again SHell.  GNU's command shell for Unix.
  1112. ftp: prep.ai.mit.edu:pub/gnu/bash-1.10.tar.Z
  1113.  
  1114. BASIC - Beginner's All-purpose Symbolic Instruction Code.  John G. Kemeny &
  1115. Thomas E. Kurtz, Dartmouth College, designed 1963, first ran on an IBM 704
  1116. on May 1, 1964.  Quick and easy programming by students and beginners. 
  1117. BASIC exists in many dialects, and is popular on microcomputers with sound
  1118. and graphics support.  Most micro versions are interactive and interpreted,
  1119. but the original Dartmouth BASIC was compiled.  ANSI Minimal BASIC, ANS
  1120. X3.60-1978.
  1121. list: basic@ireq.hydro.qc.ca
  1122.  
  1123. BASIC AUTOCODER - Early system on IBM 7070.  Listed in CACM 2(5):16 (May
  1124. 1959).
  1125.  
  1126. Basic COBOL - Subset of COBOL from COBOL-60 standards.  Sammet 1969, p.339.
  1127.  
  1128. Basic FORTRAN - Subset of FORTRAN.  Sammet 1969, p.150.
  1129.  
  1130. Basic JOVIAL - Subset of JOVIAL, ca. 1965.  Sammet 1969, p.529.
  1131.  
  1132. bawk - Bob Brodt.  AWK-like pattern-matching language, distributed with
  1133. Minix.
  1134.  
  1135. BC NELIAC - Version of NELIAC, post 1962.  Sammet 1969, p.197.
  1136.  
  1137. BCL - Successor to Atlas Commercial Language.  "The Provisional BCL
  1138. Manual", D. Hendry, U London 1966.
  1139.  
  1140. BCPL - Basic CPL.  Richards 1969.  British systems language, a descendant
  1141. of CPL and the inspiration for B and C.  BCPL is low-level,
  1142. block-structured and typeless, and provides only one-dimensional arrays. 
  1143. Case is not significant, but conventionally reserved words begin with a
  1144. capital. 
  1145.     Flow control: If-Then, Test-Then-Else, Unless-Do, While-Do, Until-Do,
  1146. Repeat, Repeatwhile, Repeatuntil, For-to-By-Do, Loop, Break and
  1147. Switchon-Into-Case-Default-Endcase.  BCPL has conditional expressions,
  1148. pointers, and manifest constants.  'Valof' or 'Resultis' cause a compound
  1149. statement to produce a value.  Parameters are call-by-value.
  1150.     Program segments communicate via the global vector where system and
  1151. user variables are stored in fixed numerical locations in a single array. 
  1152. BCPL was used to implement the TRIPOS OS.  "BCPL - The Language and its
  1153. Compiler", Martin Richards & Colin Whitby-Stevens, Cambridge U Press 1979.
  1154.  
  1155. BDL - Block Diagram Compiler.  A block-diagram simulation tool, with
  1156. associated language.  "A Software Environment for Digital Signal-Processing
  1157. Simulations," D.H. Johnson & R.E. Vaughan, Circuits Systems and Signal
  1158. Processing 6(1):31-43, (1987).
  1159.  
  1160. BEGL - Back End Generator Language.  A code generator description language. 
  1161. The input language for the back end generator BEG.  "BEG - A Generator for
  1162. Rfficient Back Ends", H. Emmelmann et al, SIGPLAN Notices 24(7):227-237
  1163. (Jul 1989).  "BEG  - A Back End Generator - User Manual", H. Emmelmann
  1164. <emmel@karlsruhe.gmd.dbp.de>, GMD, U Karlsruhe 1990.
  1165. ftp: gatekeeper.dec.com:.9/gmd/cocktail/beg
  1166.  
  1167. BELL - Early system on IBM 650 and Datatron 200 series. [Is Datatron
  1168. version the same?]  Listed in CACM 2(5):16 (May 1959).  Versions: BELL L2,
  1169. BELL L3.
  1170.  
  1171. Bertrand - (named for the British mathematician Bertrand Russell (1872-
  1172. 1970)).  Wm. Leler.  Rule-based specification language based on augmented
  1173. term rewriting.  Used to implement constraint languages.  The user must
  1174. explicitly specify the tree-search and the constraint propagation. 
  1175. "Constraint Programming Languages - Their Specification and Generation", W.
  1176. Leler, A-W 1988, ISBN 0-201-06243-7.
  1177. ftp:nexus.yorku.ca:/pub/scheme/scm/bevan.sha  
  1178.  
  1179. BETA - Kristensen, Madsen<olmadsen@daimi.aau.dk>, Moller-Pedersen &
  1180. Nygaard, 1983.  Object-oriented language with block structure, coroutines,
  1181. concurrency, strong typing, part objects, separate objects and classless
  1182. objects.  Central feature is a single abstrction mechanism called
  1183. "patterns", a generalization of classes, providing instantiation and
  1184. hierarchical inheritance for all objects including procedures and
  1185. processes.  "The BETA Programming Language", B.B. Kristensen et al, in
  1186. Research Directions in Object-Oriented Programming, B.D. Shriver et al eds,
  1187. MIT Press, 1987.  Mjolner Informatics ApS, implementations for Mac, Sun,
  1188. HP, Apollo.
  1189. info: support@mjolnet.dk
  1190. list: usergroup@mjolner.dk
  1191.  
  1192. BIOR - Early system on UNIVAC I or II.  Listed in CACM 2(5):16 (May 1959).
  1193.  
  1194. BLAZE - Single assignment language for parallel processing.  "The BLAZE
  1195. Language: A Parallel Language for Scientific Programming", P. Mehrotra et
  1196. al, J Parallel Comp 5(3):339-361 (Nov 1987).
  1197.  
  1198. BLAZE 2 - Object-oriented successor to BLAZE.  "Concurrent Object Access in
  1199. BLAZE 2", P. Mehrotra et al, SIGPLAN Notices 24(4):40-42 (Apr 1989).
  1200.  
  1201. B-LINE - Early CAD language.  "B-LINE, Bell Line Drawing Language", A.J.
  1202. Frank, Proc Fall JCC 33 1968.
  1203.  
  1204. BLISS - Basic Language for Implementation of System Software.  W.A. Wulf,
  1205. CMU  ca. 1969.  An expression language, block-structured, and typeless,
  1206. with exception handling facilities, coroutines, a macro system, and a
  1207. highly optimizing compiler.  One of the first non-assembly languages for OS
  1208. implementation.  Gained fame for its lack of a goto.  Also lacks implicit
  1209. dereferencing: all symbols stand for addresses, not values.  "BLISS: A
  1210. Language for Systems Programming", W.A. Wulf et al, CACM 14(12):780-790
  1211. (Dec 1971).  Versions: CMU BLISS-10 for the PDP-10.  CMU BLISS-11, a cross
  1212. compiler for PDP-11 running on PDP-10, to support the C.mmp/Hydra project. 
  1213. DEC BLISS-32 for VAX/VMS.
  1214.  
  1215. Blosim - Block-Diagram Simulator.  A block-diagram simulator. "A Tool for
  1216. Structured Functional Simulation", D.G. Messerschmitt, IEEE J on Selected
  1217. Areas in Comm, SAC-2(1):137-147, 1984.
  1218.  
  1219. BLOX - A visual language.
  1220.  
  1221. BLUE - Softech.  A language proposed to meet the DoD Ironman requirements
  1222. which led to Ada.  "On the BLUE Language Submitted to the DoD", E.W.
  1223. Dijkstra, SIGPLAN Notices 13(10):10-15 (Oct 1978).
  1224.  
  1225. BMASF - Basic Module Algebra Specification Language?  "Design of a
  1226. Specification Language by Abstract Syntax Engineering", J.C.M. Baeten et
  1227. al, in LNCS 490, pp.363-394.
  1228.  
  1229. BMDP - BioMeDical Package.  UCB, 1961.  Statistical language, first
  1230. implemented in FORTRAN for the IBM 7090.
  1231.  
  1232. BMF - Bird-Meertens Formalism.  A calculus for derivation of a functional
  1233. program from a given specification.  "A Calculus of Functions for Program
  1234. Derivation", R.S. Bird, in Res Topics in Fnl Prog, D. Turner ed, A-W 1990.
  1235.  
  1236. BNF - Backus Normal Form, later renamed Backus-Naur Form at the suggestion
  1237. of Donald Knuth.  A formalism to express the productions of context-free
  1238. grammars.
  1239.  
  1240. BNR Pascal - "Remote Rendezvous", N. Gammage et al, Soft Prac & Exp
  1241. 17(10):741-755 (Oct 1987.
  1242.  
  1243. BNR Prolog - Constraint logic.
  1244.  
  1245. Bob - David Betz.  A tiny object-oriented language.  Dr Dobbs J, Sep 1991,
  1246. p.26.
  1247. ftp: mv.mv.com:pub/ddj/bob15.arc
  1248.  
  1249. BOEING - Early system on IBM 1103 or 1103A.  Listed in CACM 2(5):16 (May
  1250. 1959).
  1251.  
  1252. Booster - Data parallel language.  "The Booster Language", E. Paalvast, TR
  1253. PL 89-ITI-B-18, Inst voor Toegepaste Informatica TNO, Delft, 1989.
  1254.  
  1255. BOSS - Bridgport Operating System Software.  Derivative of the ISO 1054
  1256. numerical machine control language for milling, etc.
  1257.  
  1258. Boxer - Hal Abelson and Andy diSessa, Berkeley.  A visual language, claims
  1259. to be the successor to Logo.  Boxes used to represent scope.
  1260.  
  1261. BRAVE - ?
  1262.  
  1263. BRIDGE - Component of ICES for civil engineers.  Sammet 1969, p.616.
  1264.  
  1265. Bridgetalk - A visual language.
  1266.  
  1267. Brilliant - One of five pedagogical languages based on Markov algorithms,
  1268. used in "Nonpareil, a Machine Level Machine Independent Language for the
  1269. Study of Semantics", B. Higman, ULICS Intl Report No ICSI 170, U London
  1270. (1968).  (cf. Diamond, Nonpareil, Pearl[3], Ruby[2]).
  1271.  
  1272. BRUIN - Brown University Interactive Language.  Simple interactive language
  1273. with PL/I-like syntax, for IBM 360.  "Meeting the Computational
  1274. Requirements of the University, Brown University Interactive Language",
  1275. R.G. Munck, Proc 24th ACM Conf, 1969.
  1276.  
  1277. BSL - Variant of IBM's PL/S systems language.  Versions: BSL1, BSL2.
  1278.  
  1279. BUGSYS - Pattern recognition and preparing animated movies, for IBM 7094
  1280. and IBM 360. "BUGSYS: A Programming System for Picture Processing - Not for
  1281. Debugging", R.A. Ledley et al, CACM 9(2) (Feb 1966).
  1282.  
  1283. Burge's Language - Unnamed functional language based on lambda-calculus. 
  1284. Recursive Programming techniques", W.H. Burge, A-W 1975.
  1285.  
  1286. Butterfly Common LISP - Parallel version of Common LISP for the BBN
  1287. Butterfly machine.
  1288.  
  1289. Butterfly Scheme - Parallel version of Scheme for the BBN Butterfly.
  1290.  
  1291. C - Dennis Ritchie, Bell Labs, ca. 1972.  Originally a systems language for
  1292. Unix on the PDP-11, briefly named NB.  Influenced by BCPL through
  1293. Thompson's B.  Terse, low-level and permissive.  Preprocessor.  C has
  1294. rapidly become the language most widely used for software implementation. 
  1295. "The C Programming Language", Brian Kernighan & Dennis Ritchie, P-H 1978.
  1296.  
  1297. C* - Thinking Machines, 1987.  Superset of ANSI C, object-oriented, data-
  1298. parallel with synchronous semantics, for the Connection Machine.  Adds a
  1299. data type, the 'domain', and a selection statement for parallel execution
  1300. in domains.  J.R. Rose et al, "C*: An Extended C Language for Data Parallel
  1301. Programming", in Proc Second Intl Conf on Supercomputing, L.P. Kartashev et
  1302. al eds, May 1987, pp.2-16.  "C* Programming Manual", Thinking Machines
  1303. Corp, 1986.
  1304. info: customer-support@think.com
  1305.       documentation-order@think.com
  1306.  
  1307. C++ - Stroustrup <bs@alice.att.com>.  An object-oriented superset of C.  In
  1308. C++ a class is a user-defined type, syntactically a struct with member
  1309. functions.  Constructors and destructors are member functions called to
  1310. create or destroy instances.  A friend is a nonmember function that is
  1311. allowed to access the private portion of a class.  C++ allows implicit type
  1312. conversion, function inlining, overloading of operators and function names,
  1313. and default function arguments.  It has streams for I/O and references. 
  1314. "The C++ Programming Language", Bjarne Stroustrup, A-W, 1986.  (See G++).
  1315. ftp: grape.ecs.clarkson.edu:/pub/msdos/djgpp/djgpp.zip for MS-DOS
  1316.  
  1317. C++ 2.0 - May 1989.  Multiple inheritance, type-safe linkage, pointers to
  1318. members, abstract classes.  "C++ 2.0 Draft Reference Manual"
  1319.  
  1320. C++ 2.1 - "Annotated C++ Reference Manual", B. Stroustrup et al, A-W 1990.
  1321.  
  1322. C++Linda - "The AUC C++Linda System", C. Callsen et al, U Aalborg, in
  1323. Linda-Like Systems and Their Implementation, G. Wilson ed, U Edinburgh TR
  1324. 91-13, 1991.
  1325.  
  1326. C-10 - Improved version of COLINGO.  Sammet 1969, p.702.
  1327.  
  1328. CADET - Computer Aided Design Experimental Translator.  Sammet 1969, p.683.
  1329.  
  1330. CAFE - "Job Control Languages: MAXIMOP and CAFE", J. Brandon, Proc BCS Symp
  1331. on Job Control Languages--Past Present and Future, NCC, Manchester, England
  1332. 1974.
  1333.  
  1334. CAGE - Early system on IBM 704.  Listed in CACM 2(5):16 (May 1959).
  1335.  
  1336. CAJOLE - Dataflow language.  "The Data Flow Programming Language CAJOLE: An
  1337. Informal INtroduction", C.L. Hankin et al, SIGPLAN Notices 16(7):35-44 (Jul
  1338. 1981).
  1339.  
  1340. CAL - Course Author Language.  CAI language for IBM 360.  "Design of a
  1341. Programming Language for Computer Assisted Learning", F.M. Tonge, Proc IFIP
  1342. Congress 1968, v2.
  1343.  
  1344. Caliban - Kelly, Imperial College.  Declarative annotation language,
  1345. controlling the partitioning and placement of the evaluation of expressions
  1346. in a distributed functional language.  "Functional Programming for Loosely-
  1347. coupled Multiprocessors", P. Kelly <phjk@doc.ic.ac.uk>, Pitman/MIT Press,
  1348. 1989.
  1349.  
  1350. Calico - Bell Labs.  Object-oriented language.  IEEE Software, May 1991.
  1351.  
  1352. CAMAL - CAMbridge ALgebra system.  Symbolic math used in Celestial
  1353. Mechanics and General Relativity.  Implemented in BCPL on Titan.  "CAMAL
  1354. User's Manual", John P. Fitch, Cambridge U, England (1975).  "The Design of
  1355. the Cambridge Algebra System", S.R. Bourne et al, Proc 2nd Symp of Symb &
  1356. Alg Manip, SIGSAM 1971.
  1357.  
  1358. Camelot Library - "The Camelot Library", J. Bloch, in Guide to the Camelot
  1359. Distributed Transaction Facility: Release I, A.Z. Spector et al eds, CMU
  1360. 1988, pp.29-62.
  1361.  
  1362. CAMIL - Computer Assisted/Managed Instructional Language.  Used for CAI at
  1363. Lowry AFB, CO.  "The CAMIL Programming Language", David Pflasterer, SIGPLAN
  1364. Notices 13(11):43 (Nov 1978).
  1365.  
  1366. CAML - 
  1367.  
  1368.   1. Categorical Abstract Machine Language.  G. Huet and G. Cousineau.  A
  1369. version of ML intermediate between LCF ML and SML.  Lazy data structures. 
  1370. Built on the Categorical Abstract Machine.  "The CAML Reference Manual", P.
  1371. Weis et al, TR INRIA-ENS, 1989.
  1372. ftp: nuri.inria.fr:lang/caml, Version 3.1
  1373. info: caml-light@margaux.inria.fr
  1374. list:caml-list@margaux.inria.fr
  1375.  
  1376.   2. Language for preparation of animated movies, listed [?] 1976.
  1377.  
  1378. CAML Light - Xavier Leroy.  CAML subset.  A small portable implementation,
  1379. uses a bytecode interpreter written in C.  Runs on Unix, MS-DOS, Macs and
  1380. Amiga.  Version: 0.4
  1381. ftp: nuri.inria.fr
  1382. info: caml-light@margaux.inria.fr
  1383.  
  1384. Candle - related to IDL, Scorpion system?
  1385.  
  1386. Cantor - Object-oriented language with fine-grained concurrency.  Athas,
  1387. Caltech 1987.  "Multicomputers: Message Passing Concurrent Computers", W.
  1388. Athas et al, Computer 21(8):9-24 (Aug 1988)..
  1389.  
  1390. CASE SOAP III - Version of SOAP assembly language for IBM 650.  Listed in
  1391. CACM 2(5):16 (May 1959).
  1392.  
  1393. CAT - Common Abstract Tree Language.  R. Voeller & Uwe Schmidt, U Kiel,
  1394. Germany 1983.  Universal intermediate language, used by Norsk Data in their
  1395. family of compilers.  "A Multi-Language Compiler System with Automatically
  1396. Generated Codegenerators, U. Schmidt et al, SIGPLAN Notices 19(6):202-2121
  1397. (June 1984).
  1398.  
  1399. CATO - FORTRAN-like CAI language for PLATO system on CDC 1604.  "CSL PLATO
  1400. System Manual", L.A. Fillman, U Illinois, June 1966.
  1401.  
  1402. CAYLEY - Symbolic math system for group theory.  John Cannon, U Sydney,
  1403. Australia, 1976.  "An Introduction to the Group Theory Language CAYLEY", J.
  1404. Cannon, Computational Group Theory, M.D. Atkinson ed, Academic Press 1984,
  1405. pp.148-183.  Current version: V3.7 for Sun, Apollo, VAX/VMS.
  1406. info: cayley@maths.su.oz.au
  1407.  
  1408. CBASIC - Gordon Eubanks, now at Symantec.  A BASIC compiler.  Evolved
  1409. from/into EBASIC.
  1410.  
  1411. CCalc - Symbolic math for MS-DOS, available from Simtel.
  1412.  
  1413. CCL - 
  1414.  
  1415.   1. Coral Common LISP.
  1416.  
  1417.   2. Computer Control Language.  English-like query language based on
  1418. COLINGO, for IBM 1401 and IBM 1410.  
  1419.  
  1420. CCLU - Cambridge CLU.  G. Hamilton et al, CUCL.  CLU extended to support
  1421. concurrency, distributed programming, remote procedure calls.
  1422. contact: Jean Bacon <jmb@cl.cam.ac.uk>
  1423.  
  1424. CCP - Concurrent Constraint Programming.  Not a language, but a general
  1425. approach.
  1426.  
  1427. CCS - Calculus of Communicating Systems.  "A Calculus of Communicating
  1428. Systems", LNCS 92, Springer 1980.  "Communication and Concurrency", R.
  1429. Milner, P-H 1989.
  1430.  
  1431. CCSP - Based on CSP.  "Contextually Communicating Sequential Processes - A
  1432. Software Engineering Approach", M. Hull et al, Software Prac & Exp
  1433. 16(9):845-864 (Sept 1986).
  1434.  
  1435. CDL -
  1436.  
  1437.   1. Computer Definition [Design?] Language.  A hardware description
  1438. language.  "Computer Organization and Microprogramming", Yaohan Chu, P-H
  1439. 1970.
  1440.  
  1441.   2. Command Definition Language.  Portion of ICES used to implement
  1442. commands.  Sammet 1969, p.618-620.
  1443.  
  1444.   3. Compiler Definition Language.  "CDL: A Compiler Implementation
  1445. Language", in Methods of Algorithmic Language Implementation, C.H.A Koster,
  1446. LNCS 47, Springer 1977, pp.341-351.  "Using the CDL Compiler Compiler",
  1447. C.H.A. Koster, 1974.  Variant: CDLM used at Manchester.
  1448.  
  1449.   4. Common Design Language.  "Common Design Language", IBM, Software
  1450. Engineering Inst, Sept 1983.
  1451.  
  1452. Cedar - Superset of Mesa, adding garbage collection, dynamic types and a
  1453. universal pointer type (REF ANY).  A large complex language designed for
  1454. custom Xerox hardware and the Cedar OS/environment.  Data types: atoms,
  1455. lists, ropes ("industrial strength" strings), conditions.  Multiprocessing
  1456. features include threads, monitors, signals and catch phrases.  "A
  1457. Description of the Cedar Language", Butler Lampson, Xerox PARC, CSL-83-15
  1458. (Dec 1983).  "The Structure of Cedar", D. Swinehart et al, SIGPLAN Notices
  1459. 20(7):230-244 (July 1985).
  1460.  
  1461. CELIP - A cellular language for image processing.  "CELIP: A cellular
  1462. Language for Image Processing", W. Hasselbring <willi@informatik.uni-
  1463. essen.de>, Parallel Computing 14:99-109 (1990).
  1464.  
  1465. CELLSIM - Modeling populations of biological cells.  "CELLSIM II User's
  1466. Manual", C.E. Donaghey, U Houston (Sep 1975).
  1467.  
  1468. CELP - Computationally Extended Logic Programming.  "Computationally
  1469. Extended Logic Programming", M.C. Rubenstein et al, Comp Langs 12(1):1-7
  1470. (1987).
  1471.  
  1472. CESP - Common ESP. AI Language Inst, Mitsubishi - Object-oriented extension
  1473. of Prolog, a Unix-based version of ESP[3].
  1474. info: cesp-request@air.co.jp
  1475.  
  1476. CESSL - CEll Space Simulation Language.  Simulating cellular space models. 
  1477. "The CESSL Programming Language", D.R. Frantz, 012520-6-T, CS Dept, U
  1478. Michigan (Sept 1971).
  1479.  
  1480. CFD - Computational Fluid Dynamics.  FORTRAN-based parallel language for
  1481. the Illiac IV.
  1482.  
  1483. CFP - Communicating Functional Processes.  "Communicating Functional
  1484. Processes", M.C. van Eekelen et al, TR 89-3, U Nijmegen, Netherlands, 1989.
  1485.  
  1486. CGGL - ("seagull") Code-Generator Generator Language.  A machine-
  1487. description language based on modeling the computer as a finite-state
  1488. machine.  "A Code Generator Generator Language", M.K. Donegan et al,
  1489. SIGPLAN Notices 14(8):58-64 (Aug 1979).
  1490.  
  1491. CGOL - V.R. Pratt, 1977.  A package providing ALGOL-like surface syntax for
  1492. MACLISP.  "CGOL - An Alternative Exernal Representation for LISP Users", V.
  1493. Pratt, MIT AI Lab, Working Paper 89, 1976.
  1494. ftp: mc.lcs.mit.edu:its/ai/lisp/cgol
  1495.  
  1496. CHARITY - Cockett, Spencer, Fukushima, 1990-1991.  Functional language
  1497. based purely on category theory.  "About Charity", J.R.B. Cockett
  1498. <cockett@cpcs,ucalgary.ca> et al.  Version for Sun4 available from Tom
  1499. Fukushima <fukushim@cpsc.ucalgary.ca>.
  1500.  
  1501. Charme - Bull, 1989.  A language with discrete combinatorial constraint
  1502. logic aimed at industrial problems such as planning and scheduling. 
  1503. Implemented in C.  An outgrowth of ideas from CHIP.  Semantically
  1504. nondeterministic, with choice and backtracking, similar to Prolog.  "Charme
  1505. Reference Manual", AI Development Centre, Bull, France 1990.
  1506. info: cras@bull.fr
  1507.  
  1508. CHARYBDIS - LISP program to display math expressions.  Related to MATHLAB. 
  1509. Sammet 1969, p.522.
  1510.  
  1511. CHASM - CHeap ASseMbler.  Shareware assembler for MS-DOS.
  1512.  
  1513. CHI - A wide spectrum language, the forerunner of Refine.  "Research on
  1514. Knowledge-Based Software Environments at Kestrel Institute", D.R. Smith et
  1515. al, IEEE Trans Soft Eng, SE-11(11) (1985).
  1516.  
  1517. CHILI - PL/I-like language for systems proramming.  "CHILI, An Algorithmic
  1518. Language for Systems Programming", CHI-1014, Chi Corp (Sep 1975).
  1519.  
  1520. CHILL - CCITT HIgh-Level Language.  ca. 1980.  Real-time language widely
  1521. used in European telecommunications.  "An Analytical Description of CHILL,
  1522. the CCITT High Level Language", P. Branquart, LNCS 128, Springer 1982.
  1523.  
  1524. CHIP - 
  1525.  
  1526.   1. Early system on IBM 1103 or 1103A.  Listed in CACM 2(5):16 (May 1959).
  1527.  
  1528.   2. Constraint Handling In Prolog.  M. Dincbas, ECRC Munich 1985. 
  1529. Constraint logic language, includes boolean unification and a symbolic
  1530. simplex-like algorithm.  Introduced the domain-variable model.  "The
  1531. Constraint Logic Programming Language CHIP", M. Dincbas et al, Proc 2nd
  1532. Intl Conf on Fifth Generation Computer Sys, Tokyo (Nov 1988), pp.249-264. 
  1533. "Constraint Satisfaction in Logic Programming", Van Hentenryck.  Available
  1534. from COSYTEC, 4 rue Jean Rostand, F91893 Orsay, France.
  1535.  
  1536. CHIP-48 - Reimplementation of CHIP-8 for the HP-48 calculator.  Andreas
  1537. Gustafson <gson@niksula.hut.fi>, comp.sys.handhelds, Sep 1990.
  1538. ftp: vega.hut.fi:pub/misc/hp48sx/asap/*
  1539.  
  1540. CHIP-8 - RCA, Late 70's.  Low-level language (really a high-level machine
  1541. code) for video games on computers using RCA's CDP1802 processor: COSMAC
  1542. VIP, DREAM 6800 and ETI-660.  Now there's an interpreter for the Amiga.
  1543. ftp: ux1.cso.uiuc.edu:pub/amiga/fish/f5/ff537
  1544.  
  1545. CHISEL - An extension of C for VLSI design, implemented as a C
  1546. preprocessor.  It produces CIF as output.  "CHISEL - An Extension to the
  1547. Programming language C for VLSI Layout", K. Karplus, PHD Thesis, Stanford
  1548. U, 1982.
  1549.  
  1550. CHOCS - Generalization of CCS.  "A Calculus of Higer-Order Communicating
  1551. Systems", B. Thomsen, 16th POPL pp.143-154 (1989).
  1552.  
  1553. CIEL - Object-oriented Prolog-like language.  "CIEL: Classes et Instances
  1554. En Logique", M. Gandriau, Thesis ENSEEIHT (1988).
  1555.  
  1556. CIF - Caltech Intermediate Form.  Geometry language for VLSI design, in
  1557. which the primitives are colored rectangles.  Mead & Conway, "Introduction
  1558. to VLSI Systems", A-W 1980, Section 4.5.
  1559.  
  1560. CIL - Common Intermediate Language.  "Construction of a Transportable,
  1561. Milti-Pass Compiler for Extended Pascal", G.J. Hansen et al, SIGPLAN
  1562. Notices 14(8):117-126 (Aug 1979).
  1563.  
  1564. CIP-L - CIP Language.  (CIP stands for Computer-aided Intuition-guided
  1565. Programming.)  Wide-spectrum language for incremental program
  1566. transformation.  There are ALGOL-like and Pascal-like variants.  "The
  1567. Munich Project CIP, v.I: The Wide Spectrum Language CIP-L", LNCS 183,
  1568. Springer 1984.  Version: CIP85.
  1569.  
  1570. CIRCAL - "CIRCAL and the Representation of Communication, Concurrency and
  1571. TIme", G.J. Mitre, ACM TOPLAS 7(2):270-298 (1985).
  1572.  
  1573. CITRAN - Caltech's answer to MIT's JOSS.  Sammet 1969, p.217.
  1574.  
  1575. CL - Control Language.  Batch language for the IBM RPG/38, used in
  1576. conjunction with RPG III.  (See OCL).
  1577.  
  1578. CLAM - Symbolic math, especially General Relativity.  Implemented in ATLAS
  1579. assembly language first, LISP later.  "CLAM Programmer's Manual", Ray
  1580. d'Inverno & Russell-Clark, King's College London, 1971.  (See ALAM).
  1581.  
  1582. Clarion - MS-DOS 4GL.
  1583.  
  1584. CLASP - Subset of SPL[2].
  1585.  
  1586. Classic-Ada - Object-oriented extension to Ada, said to be Smalltalk-like. 
  1587. Implemented as a preprocessor.
  1588.  
  1589. Clean - Subset of Lean.  Experimental lazy higher-order functional language
  1590. with no syntactic sugaring (not even infix expressions or complex lists.) 
  1591. Also used as an intermediate language.  Implemented via graph rewriting on
  1592. the ABC abstract machine.  "Clean - A Language for Functional Graph
  1593. Rewriting", T. Brus et al, IR 95, U Nijmegen, Feb 1987.  (See Concurrent
  1594. Clean).
  1595.  
  1596. CLEAR - Specification language based on initial algebras.  "An Informal
  1597. Introduction to Specification Using CLEAR", R.M. Burstall in The
  1598. Correctness Problem in Computer Science, R.S. Boyer et al eds, Academic
  1599. Press 1981, pp.185-213.
  1600.  
  1601. C-Linda - The most widely used variant of Linda, with C as the base
  1602. language.  Available from Sci Comp Assocs <linda@sca.com>.
  1603.  
  1604. CLIP - 
  1605.  
  1606.   1. Compiler Language for Information Processing.  1958-1959.  Based on
  1607. IAL, led to JOVIAL.  One of the first languages used to write its own
  1608. compiler.  Sammet 1969, p.635.
  1609.  
  1610.   2. Common LISP in Parallel.  Allegro.  Version for the Sequent Symmetry.
  1611.  
  1612. Clipper - Compiled dBASE dialect from Nantucket Corp, LA.  Versions: 
  1613. Winter 85, Spring 86, Autumn 86, Summer 87, 4.5 (Japanese Kanji), 5.0.
  1614.  
  1615. CLIPS - C Language Integrated Production System.  NASA JSC.  A forward-
  1616. chaining rule-based language with LISP-like syntax that has the inferencing
  1617. and representation capabilities of OPS5.  A language for developing expert
  1618. systems, now with support for three paradigms: rule-based, object-oriented
  1619. and procedural.  Available for MS-DOS, comes with source code in C. 
  1620. COSMIC, U Georgia, (404) 542-3265.  Austin Code Works <info@acw.com>
  1621. (512)258-0785.  Versions: CLIPS 5.1, CLIPS/Ada 4.3.  (See PCLIPS).
  1622. info: service@cossack.cosmic.uga.edu
  1623. telnet: cosline@cosmic.uga.edu
  1624. ftp: earth.rs.itd.umich.edu:mac.bin/etc/compsci/Clips/CLIPS 4.20
  1625.     ftp.ensmp.fr:/pub/clips/clips-5.1/dos
  1626.     ftp.ensmp.fr:mac-clips-50
  1627. list: CLIPS-LIST@UGA.BITNET
  1628.  
  1629. CLIX - "Overview of a Parallel Object-Oriented Language CLIX", J. Hur et
  1630. al, in ECOOP '87, LNCS 276, Springer 1987, pp.265-273.
  1631.  
  1632. CLOS - Common LISP Object System.  Object-oriented extension to Common
  1633. LISP, based on generic functions, multiple inheritance, declarative method
  1634. combination and a meta-object protocol.  A descendant of CommonLoops. 
  1635. "Common LISP Object System Specification X3J13 Document 88-002R", D.G.
  1636. Bobrow et al, SIGPLAN Notices 23 (Sep 1988).  (See PCL[2]).
  1637. ftp: parcftp.xerox.com:pcl
  1638.  
  1639. CLP - 
  1640.  
  1641.   1. Cornell List Processor.  Extension of CORC for list processing. 
  1642. Sammet 1969, p.461.
  1643.  
  1644.   2. Constraint Logic Programming.  A programming framework based (as
  1645. Prolog) on LUSH (or SLD) resolution, but in which unification has been
  1646. replaced by a constraint solver.  A CLP interpreter contains a Prolog-like
  1647. inference engine and an incremental constraint solver.  The engine sends
  1648. constraints to the solver one at a time.  If the new constraint is
  1649. consistent with the collected constraints it will be added to the set.  If
  1650. it was inconsistent, it will cause the engine to backtrack.  "Constraint
  1651. Logic Programming", J. Jaffar et al, 14th POPL, ACM 1987.
  1652.  
  1653. CLP(R) - Constraint Logic Programming (Real).  Joxan Jaffar, TJWRC & S.
  1654. Michaylov, Monash U, 1986.  A constraint-logic programming language with
  1655. real-arithmetic constraints.  A superset of Prolog.  "The CLP(R) Language
  1656. and System", J. Jaffar et al, IBM RR RC16292 (#72336) (Nov 1990).  Version:
  1657. 1.2 for Unix, MS-DOS and OS/2, available from the author.
  1658. info: <joxan@watson.ibm.com>
  1659.  
  1660. CLP* - Derivative of CLP.  "CLP* and Constraint Abstraction", T. Hickey,
  1661. 16th POPL, pp.125-133, 1989.
  1662.  
  1663. CLU - CLUster.  1974-1975.  CLU is an object-oriented language of the
  1664. Pascal family designed to support data abstraction, similar to Alphard. 
  1665. Introduced the iterator: a coroutine yielding the elements of a data
  1666. object, to be used as the sequence of values in a 'for' loop.
  1667.     A CLU program consists of separately compilable procedures, clusters
  1668. and iterators, no nesting.  A cluster is a module naming an abstract type
  1669. and its operations, its internal representation and implementation. 
  1670. Clusters and iterators may be generic.  Supplying actual constant values
  1671. for the parameters instantiates the module.
  1672.     There are no implicit type conversions.  In a cluster, the explicit
  1673. type conversions 'up' and 'down' change between the abstract type and the
  1674. representation.  There is a universal type 'any', and a procedure force[]
  1675. to check that an object is a certain type.  Objects may be mutable or
  1676. immutable.
  1677.     Exceptions are raised using 'signal' and handled with 'except'. 
  1678. Assignment is by sharing, similar to the sharing of data objects in LISP.
  1679. Arguments are passed by call-by-sharing, similar to call by value, except
  1680. that the arguments are objects and can be changed only if they are mutable. 
  1681. CLU has own variables and multiple assignment.
  1682.     "CLU Reference Manual", Barbara Liskov et al, LNCS 114, Springer 1981.
  1683. ftp: pion.lcs.mit.edu - versions for Sun, VAX/VMS.
  1684. contact: Paul R. Johnson <prj@pm-prj.lcs.mit.edu>
  1685.  
  1686. Cluster 86 - Shang, Nanjing U ca1986.  Distributed object-oriented
  1687. language.  A cluster is a metatype.  "Cluster: An Informal Report", L.
  1688. Shang <lshang@inf.ethz.ch>, SIGPLAN Notices 26(1):57-76 (Jan 1991). 
  1689. Versions for MS-DOS, Unix.
  1690.  
  1691. CMAY - "A Microkernel for Distributed Applications", R. Bagrodia et al,
  1692. Proc 5th Intl Conf Distrib Comp Sys IEEE 1985, pp.140-149.
  1693.  
  1694. CML - 
  1695.  
  1696.   1. A query language.  "Towards a Knowledge Description Language", A.
  1697. Borgida et al, in On Knowledge Base Management Systems, J. Mylopoulos et al
  1698. eds, Springer 1986.
  1699.  
  1700.   2. Concurrent ML.  J. Reppy, Cornell 1990.  A concurrent extension of
  1701. SML/NJ, supporting dynamic thread creation and synchronous message passing
  1702. on typed channels.  Threads are implemented using first-class
  1703. continuations.  "CML: A Higher-Order Concurrent Language", John H. Reppy,
  1704. SIGPLAN Notices 26(6):293-305 (June 1991).
  1705. ftp: ftp.cs.cornell.edu:/pub/CML-0.9.tar.Z
  1706. info: cml-bugs@cs.cornell.edu
  1707.  
  1708. CMS-2 - General purpose language used for command and control applications
  1709. in the US Navy.  "CMS-2Y Programmers Reference Manual", M-5049, PDCSSA, San
  1710. Diego CA (Oct 1976).
  1711.  
  1712. CO2 - (a blend of C and O2).  Object-oriented database language.  GIP
  1713. Altair, Versailles, France.  Francois Bancilhon et al, in Advances in
  1714. Object-Oriented Database Systems, K.R. Dittrich ed, LNCS 334, Springer
  1715. 1988.
  1716.  
  1717. COBOL - COmmon Business Oriented Language.  1960.  CODASYL Committee, Apr
  1718. 1960.  Simple computations on large amounts of data.  The most widely used
  1719. programming language today.  The natural language style is intended to be
  1720. largely self-documenting.  Introduced the record structure.  "Initial
  1721. Specifications for a Common Business Oriented Language" DoD, US GPO, Apr
  1722. 1960.  Major revisions in 1968 (ANS X3.23-1968), 1974 (ANS X3.23-1974), and
  1723. 1985.
  1724.  
  1725. COBOL-1961 Extended - Short-lived separation of COBOL specifications. 
  1726. Sammet 1969, p.339.
  1727.  
  1728. CoCoA - [Symbolic math?  On a Radio Shack CoCo???  I have no idea.]
  1729.  
  1730. Cocol - Coco Language.  A language for writing left-attributed LL(1)
  1731. grammars.  Syntactic resemblance to Modula-2.  Used as the input language
  1732. for the Coco LL(1) parser generator, which produces Modula-2 output.  "A
  1733. Compiler Generator for Microcomputers", P. Rechenberg et al, P-H 1989. 
  1734. Version: Cocol-2 for the Coco-2 generator.
  1735.  
  1736. CODIL - COntext Dependent Information Language.  Early language for non-
  1737. numerical business problems.  "CODIL, Part1.  The Importance of
  1738. Flexibility", C.F. Reynolds et al, Computer J 14(3):217-220 (May 1971).
  1739.  
  1740. COFF - Common Object File Format.  Binary file format used by Unix System V
  1741. Release 3.
  1742.  
  1743. COGENT - COmpiler and GENeralized Translator.  Compiler writing language
  1744. with pattern-directed string and list processing features, for CDC 3600 and
  1745. CDC 3800.  A program consists of productions defining a context-free
  1746. language, plus analysis and synthesis function generators, "COGENT
  1747. Programming Manual", J.C. Reynolds, ANL-7022, Argonne, Mar 1965.  Sammet
  1748. 1969, p.638.  "An Introduction to the COGENT System", J.C. Reynolds, Proc
  1749. ACM 20th Natl Conf, 1965.
  1750.  
  1751. COGO - Co-ordinate geometry problems in Civil Engineering.  A subsystem of
  1752. ICES.  "Engineer's Guide to ICES COGO I", R67-46, CE Dept MIT (Aug 1967).
  1753.  
  1754. Coherent Parallel C - Data parallel language.  "Coherent Parallel C", E.
  1755. Felten et al in Third Conf on Hypercube Concurrent Computers and Appls,
  1756. ACM, 1988, pp.440-450.
  1757.  
  1758. COIF - FORTRAN with interactive graphic extensions for circuit design, on
  1759. UNIVAC 1108.  "An Interactive Software System for Computer-Aided Design: An
  1760. Application to Circuit Projects", CACM 9(13) (Sep 1970).
  1761.  
  1762. COLASL - Early system for numerical prolems on IBM 7030.  Special character
  1763. set for input of natural math expressions.  Sammet 1969, pp.265-271.
  1764.  
  1765. COLD - A sugared version of COLD-K.
  1766.  
  1767. COLD-K - Formal design kernel language for describing (sequential) software
  1768. systems in intermediate stages of their design.  "An Introduction to COLD-
  1769. K", H.B.M. Jonkers in Algebraic Methods: Theory, Tools and Applications, M.
  1770. Wirsing et al eds, LNCS 394, Springer 1989, pp.139-205.
  1771.  
  1772. COLINGO - Compile On-LINe and GO.  MITRE Corp.  English-like query system
  1773. for IBM 1401.  "The COLINGO System Design Philosophy", Information System
  1774. Sciences, Proc Second Congress, 1965.  Sammet 1969, p.664.
  1775.  
  1776. COMAL - Benedict Loefstedt & Borge Christensen, 1973.  A language for
  1777. beginners, popular in Europe and Scandinavia.  Pascal-like structure added
  1778. to BASIC.  COMAL-80 has been adopted as an introductory language in
  1779. Denmark.  "Beginning COMAL", B. Christensen, Ellis Harwood 1982.  COMAL
  1780. User's Group, 5501 Groveland Terr, Madison WI 53716.  Version for Amiga.
  1781.  
  1782. COMIT - 1957-8.  The first string-handling and pattern-matching language,
  1783. designed for applications in natural language translation.  The user has a
  1784. workspace organized into shelves.  Strings are made of constituents
  1785. (words), accessed by subscript.  A program is a set of rules, each of which
  1786. has a pattern, a replacement and goto another rule.  "COMIT Programmer's
  1787. Reference Manual", V.H. Yngve, MIT Press 1961.  Sammet 1969, pp.416-436.
  1788.  
  1789. COMIT II - "Computer Programming with COMIT II", Victor H. Yngve, MIT
  1790. Press, 1963.
  1791.  
  1792. Comma - COMputable MAthematics.  Esprit project at KU Nijmegen.
  1793.  
  1794. COMMEN - L.J. Cohen.  Proc SJCC 30:671-676, AFIPS (Spring 1967).
  1795.  
  1796. Commercial Translator - English-like pre-COBOL language for business data
  1797. processing.  Sammet 1969, p.378.
  1798.  
  1799. Common LISP - An effort begun in 1981 to provide a common dialect of LISP. 
  1800. The result is a large and complex language, fairly close to a supeset of
  1801. Maclisp.  Lexical binding, data structures using defstruct and setf,
  1802. closures, multiple values, types using declare, a variety of numerical
  1803. types.  Function calls allow optional, keyword and &rest arguments.  
  1804. Generic sequence can either be a list or an array.  Formatted printing
  1805. using escape characters.  "Common LISP: The Language", Guy L. Steele,
  1806. Digital Press 1984, ISBN 0-932376-41-X. "Common LISP: The Language, 2nd
  1807. Edition", Guy L. Steele, Digital Press 1990, ISBN 1-55558-041-6.
  1808. (See AKCL, CCL, DCL, KCL) 
  1809. list: common-list@mcc.com.
  1810. ftp: lisp-rt1.slisp.cs.cmu.edu  CMU Common LISP Version 16e
  1811.      ftp.think.com:public/think/lisp:public-review.text
  1812.         Draft proposed ANS Common Lisp
  1813.  
  1814. CommonLoops - "CommonLoops: Merging Lisp and Object-Oriented Programming",
  1815. D.G. Bobrow et al, SIGPLAN Notices 21(11):17-29 (Nov 1986).  (See CLOS,
  1816. PCL).
  1817. ftp: arisia.xerox.com - Pcl (Portable CommonLoops)
  1818. info: CommonLoops@xerox.com
  1819.  
  1820. CommonObjects - "Inheritance and the Development of Encapsulated Software
  1821. Components", A. Snyder, Proc 20th Hawaii Conf on Sys Sci, pp.227-238
  1822. (1987).
  1823.  
  1824. Compact COBOL - Subset of COBOL defined, but not published, ca. 1961. 
  1825. Sammet 1969, p.339.
  1826.  
  1827. Compas Pascal - Predecessor of Turbo Pascal, by POLY Data of Denmark. 
  1828. Later renamed POLY Pascal, and afterwards sold to Borland.
  1829.  
  1830. COMPASS - COMPrehensive ASSembler.  Assembly language on CDC machines.
  1831.  
  1832. Compel - COMpute ParallEL.  The first single-assignment language.  "A
  1833. Language Design for Concurrent Processes", L.G. Tesler et al, Proc SJCC
  1834. 32:403-408, AFIPS (Spring 1968).
  1835.  
  1836. Compiler-Compiler - Early compiler generator for the Atlas, with its own
  1837. distinctive input language.  "The Compiler-Compiler", R.A. Brooker et al,
  1838. Ann Rev Automatic Programming 3:229-275, Pergamon 1963.
  1839.  
  1840. COMPL - "The COMPL Language and Operating System", A.G. Fraser et al,
  1841. Computer J 9(2):144-156 (1966).
  1842.  
  1843. COMPREHENSIVE - Early system on MIT's Whirlwind.  Listed in CACM 2(5):16
  1844. (May 1959).
  1845.  
  1846. COMPROSL - COMpound PROcedural Scientific Language.  Language for
  1847. scientists or engineers.  Sammet 1969, p.299-300.
  1848.  
  1849. Computer Animation Movie Language.  "A Computer Animation Movie Language
  1850. for Educational Motion Pictures", D.D. Weiner et al, Proc FJCC 33(2), AFIPS 
  1851. (Fall 1968).
  1852.  
  1853. Computer Compiler - Proposed language for compiler design.  Sammet 1969,
  1854. p.695.
  1855.  
  1856. Computer Design Language - ALGOL-like language for computer design.  "An
  1857. ALGOL-like Computer Dewsign Language", Y. Chu, CACM 8(10) (Oct 1965).
  1858.  
  1859. COMSL - COMmunication System Simulation Language.  "COMSL - A Communication
  1860. System Simulation Language", R.L. Granger, Proc FJCC 37 (1970).
  1861.  
  1862. COMTRAN - "Communications Computer Language COMTRAN", D.W. Clark et al,
  1863. RADC-TR-69-190, Rose Air Development Center, Griffiss AFB, NY (July 1969). 
  1864. Sammet 1969, p.324, 331.
  1865.  
  1866. ConC - Concurrent extension of C based on DPN (decomposed Petri nets),
  1867. using 'handshake' and 'unit' constructs.  "ConC: A Language for Distributed
  1868. Real-Time Programming", V.K. Garg et al, Computer Langs 16(1):5-18 (1991).
  1869.  
  1870. CONCUR - "CONCUR, A Language for Continuous Concurrent Processes", R.M.
  1871. Salter et al, Comp Langs 5(3):163-189 (1981).
  1872.  
  1873. Concurrent C - 
  1874.  
  1875.   1. Extension of C with rendezvous-based concurrency.  "Concurrent C",
  1876. N.H. Gehani et al, Soft Prac & Exp 16(9):821-844 (1986).  "The Concurrent C
  1877. Programming Language", N. Gehani et al, Silicon  Press 1989.  Versions for 
  1878. most Unix systems available commercially from AT&T.
  1879.  
  1880.   2. Extension of C with asynchronous message passing.  [NOT the same as
  1881. above] "Concurrent C: A Language for Distributed Systems", Y. Tsujino et
  1882. al, Soft Prac & Exp 14(11):1061-1078 (Nov 1984).
  1883.  
  1884. Concurrent C++ - "Concurrent C++: Concurrent Programming with Class(es)",
  1885. N. Gehani, Bell labs 1986.
  1886.  
  1887. Concurrent Clean - An implementation of CFP.  A version of Clean for
  1888. loosely coupled parallel architectures.  Lazy, purely functional.  Strongly
  1889. typed (Milner/Mycroft), modules, functional I/O (including windows and
  1890. mouse).  Compiles to the PABC machine, based on graph rewriting. 
  1891. "Concurrent Clean", M.C. van Eekelen et al, TR 89-18, U Nijmegen,
  1892. Netherlands, 1989.  Version: 0.8.1, October 1992.
  1893. ftp: ftp.cs.kun.nl:pub/Clean - simulator for Mac, Sun3, Sun4
  1894. info: <clean@cs.kun.nl>
  1895.  
  1896. Concurrent CLU - Hamilton, 1984.  "Preserving Abstraction in Concurrent 
  1897. Programming", R. Cooper et al, IEEE Trans Soft Eng SE-14(2):258-263 (Feb
  1898. 1988).
  1899.  
  1900. Concurrent Euclid - J.R. Cordy & R.C. Holt, U Toronto, 1980.  Subset of
  1901. Euclid ("Simple Euclid") with concurrent extensions.  Separate compilation,
  1902. modules, processes and monitors, signal and wait on condition variables. 
  1903. 'Converters' to defeat strong type checking, absolute addresses.  All
  1904. procedures and functions are re-entrant.  TUNIS (a Unix-like OS) is written
  1905. in Concurrent Euclid.  "Specification of Concurrent Euclid", J.R. Cordy &
  1906. R.C. Holt, Reports CSRI-115 & CSRI-133, CSRI, U Toronto, Jul 1980, rev. Aug
  1907. 1981.  "Concurrent Euclid, The Unix System, and Tunis," R.C. Holt, A-W,
  1908. 1983.
  1909.  
  1910. Concurrent LISP - "A Multi-Processor System for Concurrent Lisp", S.
  1911. Sugimoto et al, Proc 1983 Intl Conf parallel Proc, 1983 pp.135-143.
  1912.  
  1913. Concurrent Pascal - Brinch Hansen, 1972-75.  Extension of a Pascal subset,
  1914. Sequential Pascal.  The first language to support monitors.  Access to
  1915. hardware devices through monitor calls.  Also processes and classes.  "The
  1916. Programming Language Concurrent Pascal", Per Brinch Hansen, IEEE Trans Soft
  1917. Eng 1(2):199-207 (Jun 1975).
  1918.  
  1919. Concurrent Prolog - Ehud "Udi" Shapiro, Yale <shapiro-ehud@yale.edu>. 
  1920. Guarded clauses and committed-choice [= dont-care] nondeterminism.  A
  1921. subset's been implemented, but not the full language.  "Concurrent Prolog:
  1922. Collected Papers", E. Shapiro, V.1-2, MIT Press 1987.  (See Mandala).
  1923.  
  1924. Concurrent Scheme - M. Swanson <swanson%teewinot@cs.utah.edu>.  A parallel
  1925. Lisp, for the Mayfly.  "Concurrent Scheme", R.R. Kessler et al, in Parallel
  1926. Lisp: Languages and Systems, T. Ito et al eds, LNCS 441, Springer 1989.
  1927.  
  1928. ConcurrentSmalltalk - Concurrent variant of Smalltalk (what did you
  1929. expect).  "Concurrent Programming in ConcurrentSmalltalk", Y. Yokote et al
  1930. in Object-Oriented Concurrent Programming, A. Yonezawa et al eds, MIT Press
  1931. 1987, pp.129-158.
  1932.  
  1933. CONIC - "Dynamic Configuration for Distributed Systems", J. Kramer et al,
  1934. IEEE Trans Soft Eng SE-11(4):424-436 (Apr 1985).
  1935.  
  1936. Connection Machine LISP - LISP with a parallel data structure, the
  1937. 'xapping', an array of values assigned to an array of sites.  G.L. Steele
  1938. et al, "Connection Machine LISP: Fine-Grained Parallel Symbolic
  1939. Processing", in Proc 1986 ACM Conf on LISP and Functional Prog, Aug 1986,
  1940. pp.279-297.  "Connection Machine LISP Reference Manual", Thinking Machines
  1941. Corp, Feb 1987.
  1942.  
  1943. CONNIVER - AI language for automatic theorem proving.  An outgrowth of
  1944. PLANNER.  Allowed multiple database contexts with hypothetical assertions. 
  1945. "The CONNIVER Reference Manual", D. McDermott & G.J. Sussman
  1946. <gjs@zurich.ai.mit.edu>, AI Memo 259, MIT AI Lab, 1973.
  1947.  
  1948. ConstraintLisp - Object-oriented constraint language based on CSP.  An
  1949. extension of Common Lisp and CLOS.  "ConstraintLisp: An Object-Oriented
  1950. Constraint Programming Language", Bing Liu <bing@iti.gov.sg> et al, SIGPLAN
  1951. Notices 27(11):17-26 (Nov 1992).
  1952.  
  1953. CONSTRAINTS - Constraints using value inference.  "CONSTRAINTS: A Language
  1954. for Expressing Almost-Hierarchical Descriptions", G.J. Sussman et al, Artif
  1955. Intell 14(1):1-39 (Aug 1980).
  1956.  
  1957. Consul - Constraint-based [future-based?] language with LISP-like syntax. 
  1958. "Consul: A Parallel Constraint Language", D. Baldwin, IEEE Software
  1959. 6(4):62-71.
  1960.  
  1961. CONVERT -
  1962.  
  1963.   1. String processing language, an extension of LISP with pattern matching
  1964. and transformation operations.  "Convert", A. Guzman et al, CACM 9(8):604-
  1965. 615 (Aug 1966).
  1966.  
  1967.   2. Early language to convert programs and data from one language to
  1968. another.  "CONVERT Manual", OLI Systems Inc (Oct 1976).
  1969.  
  1970. COOL - 
  1971.  
  1972.   1. Concurrent Object-Oriented Language.  A parallel version of C++. 
  1973. "COOL: A Language for Parallel Programming", R. Chandra
  1974. <rohit@seagull.stanford.edu> et al in Languages and Compilers for Parallel
  1975. Computing, D. Gelernter et al eds, MIT Press 1990, pp.126-148.
  1976.  
  1977.   2. CLIPS Object-Oriented Language?
  1978.  
  1979. CORAL - Class Oriented Ring Associated Language.  L.G. Roberts, MIT 1964. 
  1980. Graphical display and systems programming on the TX-2.  Used "rings"
  1981. (circular lists) from Sketchpad.  "Graphical Communication and Control
  1982. Languages", L.B. Roberts, Information System Sciences: Proc Second
  1983. Congress, 1965.  Sammet 1969, p.462.
  1984.  
  1985. CORAL 66 - Real-time system programming language, a derivative of JOVIAL
  1986. and ALGOL-60.  It was adopted as the British military standard from 1970
  1987. until the arrival of Ada.  "Official Definition of CORAL 66", P.M. Woodward
  1988. et al, HMSO, London, 1970.
  1989.  
  1990. CORBIE - Early system on IBM 704.  Listed in CACM 2(5):16 (May 1959).
  1991.  
  1992. CORC - CORnell Compiler.  Simple language for student math problems.  "The
  1993. Cornell Computing Language", R.W. Conway et al, CACM 6(6):317-320 (Jun
  1994. 1963)  Sammet 1969, p.294-296.
  1995.  
  1996. Coroutine Pascal - "Control Separation in Programming languages", Lemon et
  1997. al, ACM Ann Conf 1977.
  1998.  
  1999. CORREGATE - Based on IT.  Sammet 1969, p.139.
  2000.  
  2001. Correlatives and Conversions - Data description language used in the Pick
  2002. OS.  "Exploring the Pick Operating System", J.E. Sisk et al, Hayden 1986.
  2003.  
  2004. Coursewriter III - ca. 1976.  Simple CAI language.  "Coursewriter III,
  2005. Version 3 Author's Guide", SH20-1009, IBM.
  2006.  
  2007. COWSEL - COntrolled Working SpacE Language.  Burstall et al, U Edinburgh,
  2008. 1964-66.  LISP-like semantics with FORTH-like stack.  Written in reverse
  2009. Polish form.  Forerunner of POP.  EPU-R-12, U Edinburgh (Apr 1966).
  2010.  
  2011. CP - A concurrent Prolog.  "The Concurrent Logic Programming Language CP":
  2012. Definition and Operational Semantics", V. Saraswat, 14th POPL, ACM 1987,
  2013. pp.49-62.
  2014.  
  2015. CParaOps5 - Anurag Acharya, <acharya@cs.cmu.edu>.  Parallel version of
  2016. OPS5, written in C and compiling to C.  Available for Unix, Mach, Encore
  2017. Multimaxen, and Sequent.  Version: 5.4.
  2018. ftp: dravido.soar.cs.cmu.edu:/usr/nemo/cparaops5/CParaOPS5-5.4.tar.Z 
  2019.  
  2020. CPL - Combined Programming Language.  U Cambridge and U London.  Similar to
  2021. ALGOL 60 but quite complex.  Never fully implemented, died with the Atlas
  2022.  
  2023. From billk@cs.ukans.edu Fri Feb  5 05:41:00 1993
  2024. Received: from mars.cs.ukans.edu by cogsci.Berkeley.EDU (5.63/1.29)
  2025.     id AA25983; Fri, 5 Feb 93 05:40:56 -0800
  2026. From: Bill Kinnersley <billk@cs.ukans.edu>
  2027. Date: Fri, 5 Feb 1993 07:40:19 CST
  2028. X-Mailer: Mail User's Shell (7.2.5 10/14/92)
  2029. To: muir@cogsci.Berkeley.EDU
  2030. Subject: Part 3
  2031. Message-Id:  <9302050740.aa07596@cs.ukans.edu>
  2032.  
  2033. computer.  Led to the much simpler BCPL.  "The Main Features of CPL", D.W.
  2034. Barron et al, Computer J 6(2):134-143 (Jul 1963).
  2035.  
  2036. C-Prolog - F. Pereira <pereira@research.att.com> et al, Jul 1982.  An
  2037. implementation of Prolog in C.  No garbage collection.
  2038. ftp: hpserv1.cs.uit.no:pub/languages/cprolog.tar.Z
  2039.  
  2040. CPS - 
  2041.  
  2042.   1. Conversational Programming System.  Allen-Babcock Corp, 1965. 
  2043. Interactive extended subset of PL/I.  "Conversational Programming System
  2044. under TSO (PBPO), Terminal User's Manual", SH20-1197, IBM.  Sammet 1969,
  2045. p.232-240.
  2046.  
  2047.   2. Continuation Passing Style.  A semantically clean language with
  2048. continuations, has been used as an intermediate language for Scheme and the
  2049. SML/NJ compiler.  "Rabbit: A Compiler for Scheme", G.L. Steele, AI-TR-474,
  2050. MIT (May 1978).  "Compiling With Continuations", A. Appel, Cambridge U
  2051. Press 1992.
  2052.  
  2053. C-Refine - Lutz Prechelt <prechelt@ira.uka.de> Symbolic naming of code
  2054. fragments to redistribute complexity and provide running commentary. 
  2055. Implemented as a C preprocessor.
  2056. ftp: comp.sources.reviewed: crefine
  2057.  
  2058. CRISP - Jeff Barnett, SDC, Santa Monica CA, early 70's.  A LISP-like
  2059. language and compiler for the IBM 370.  Differences from LISP included a
  2060. generalization of 2-part cons nodes to n-part.
  2061.  
  2062. CRL - Carnegie Representation Language.  (c)Carnegie Group Inc.  Frame
  2063. language derived from SRL.  Written in Common LISP.  Used in the product
  2064. Knowledge Craft.
  2065.  
  2066. CROSSTABS - Simple language for statistical analysis of tabular data. 
  2067. "User's Manual for the CROSSTABS System", Cambridge Computer Assoc (Feb
  2068. 1977).
  2069.  
  2070. Crystal - Concurrent Representation of Your Space-Time ALgorithms.  A
  2071. recursion equation parallel language.  "A Parallel Language and its
  2072. Compilation to Multiprocessor Machines or VLSI", M.C. Chen, 13th POPL, ACM
  2073. 1986 pp.131-139.
  2074.  
  2075. CS-4 - [?]  Mentioned in "An Overview of Ada", J.G.P. Barnes, Soft Prac &
  2076. Exp 10:851-887 (1980).
  2077.  
  2078. CS-Prolog - Distributed logic language.  "CS-Prolog on Multi-Transputer
  2079. Systems", I. Futo et al, Microprocessors & Microsystems, March 1989.
  2080.  
  2081. C-Scheme - Joe Bartlett at DEC/WRL?  Dialect of Scheme implemented in and
  2082. embeddable in C.
  2083.  
  2084. csh - C-Shell.  William Joy.  Command shell interpreter and script language
  2085. for Unix.
  2086.  
  2087. CSL -
  2088.  
  2089.   1. Computer Structure Language.  A computer hardware description
  2090. language, written in BCPL.  "Computer Structure Language (CSL)", Proc 1975
  2091. Symp on Comp Hardware Description Languages and their Appl, ACM (Sep 1975).
  2092.  
  2093.   2. Control and Simulation Language.  "Control and Simulation Language",
  2094. J.N. Buxton et al, Computer J 5(3):194-199 (Oct 1962).  Version: CSL II.
  2095.  
  2096. CSM - "CSM - A Distributed Programming Language", S. Zhongxiu et al, IEEE
  2097. Trans Soft Eng SE-13(4):497-500 (Apr 1987).
  2098.  
  2099. CSMP - Continuous System Modeling Program.  Simulation of dynamics of
  2100. continuous systems.  Similar to CSSL.  "A Guide to Using CSMP - The
  2101. Continuous System Modeling Program", Frank H. Speckhart et al, P-H 1976.
  2102.  
  2103. CSP - Communicating Sequential Processes.  1978.  A notation for
  2104. concurrency based on synchronous message passing and selective
  2105. communications.  cobegin/coend.  "Communicating Sequential Processes", A.R.
  2106. Hoare, P-H 1985.
  2107.  
  2108. CSP/80 - Based on CSP.  "CSP/80: A Language for Communicating Processes",
  2109. M. Jazayeri et al, Proc Fall COMPCON80, IEEE pp.736-740 (Sept 1980).
  2110.  
  2111. CS/PCode - Used at Microsoft.
  2112.  
  2113. CSP/k - Concurrent SP/k.  A PL/I-like concurrent language.  "Structured
  2114. Concurrent Programming with Operating System Applications", R.C. Holt et
  2115. al, A-W 1978.
  2116.  
  2117. CSP-S - "Implementation of CSP-S for Description of Distributed
  2118. Algorithms", L. Patniak et al, Comput Lang 9(3):193-202 (1984).
  2119.  
  2120. CSPS - "Toward Comprehensive Specification of Distributed Systems", G.
  2121. Roman et al, Proc 7th Intl Conf on Distrib Comp Sys, IEEE 1987, pp.282-289.
  2122.  
  2123. CS/QCode - Used at Microsoft.
  2124.  
  2125. CSS/II - Computer System Simulator II.  Like GPSS, for IBM 360.  "Computer
  2126. System Simulator II (CSS II) Program Description and Operations Manual",
  2127. SH20-0875, IBM.
  2128.  
  2129. CSSA - Object-oriented language.  "Key Concepts in the INCAS Multicomputer
  2130. Project", J. Nehmer et al, IEEE Trans Soft Eng SE-13(8):913-923 (Aug 1987).
  2131.  
  2132. CSSL - Continuous System Simulation Language.  Versions include ACSL,
  2133. HYTRAN, SL-I, S/360 and CSMP.  "The SCi Continuous System Simulation
  2134. Language (CSSL)", Simulation, 9(6) (Dec 1967).
  2135.  
  2136. CSTools - Concurrency through message-passing to named message queues.
  2137.  
  2138. CTL - 
  2139.  
  2140.   1. Checkout Test language.  "Checkout Test Language: An Interpretive
  2141. Language Designed for Aerospace Checkout Tasks", G.S. Metsker, Proc FJCC
  2142. 33(2) (1968).
  2143.  
  2144.   2. Compiler Target Language.  Intermediate language used by the ALICE
  2145. parallel machine.  "The Design and Implementation of ALICE: A Parallel
  2146. Graph Reduction Machine", M.D. Cripps et al, Proc Workshop on Graph
  2147. Reduction, Springer 1987.
  2148.  
  2149. Cube - Three-dimensional visual language for higher-order logic.  "The Cube
  2150. Language", M. Najork et al, 1991 IEEE Workshop on Visual Langs, Oct 1991,
  2151. pp.218-224.
  2152.  
  2153. CUCH - CUrry-CHurch.  Lambda-calculus.  "A Type-Theoretical Alternative to
  2154. CUCH, ISWIM, OWHY", Dana Scott, Oxford U 1969.  "Introduction to the CUCH",
  2155. C. Bohm et al, in Automata Theory, E.R. Caianiello ed, A-P 1966, pp.35-65.
  2156.  
  2157. Culler-Fried System - System for interactive mathematics.  Sammet 1969,
  2158. p.253-255.
  2159.  
  2160. CUPID - Graphic query language.  "CUPID: A Graphic Oriented Facility for
  2161. Support of Nonprogrammer Interactions with a Datablase",  N. McDonald, PhD
  2162. Thesis, CS Dept, UC Berkeley 1975.
  2163.  
  2164. CUPL - Cornell University Programming Language.  Simple math problems,
  2165. based on CORC, with PL/I-like syntax.  "An Instruction Language for CUPL",
  2166. R.J. Walker, Cornell U, Jul 1967,
  2167.  
  2168. CWIC - Compiler for Writing and Implementing Compilers.  Val Schorre.  One
  2169. of the early metacompilers.  (cf. Meta-II).
  2170.  
  2171. CYBIL - Control Data's system programming language in the 80's.  Major
  2172. parts of CDC systems written in this.
  2173.  
  2174. CYCL - Frame language.  "Building Large Knowledge-Based Systems", D.B.
  2175. Lenat et al, A-W 1990.
  2176.  
  2177. CypherText - Interactive language for text formatting and typesetting. 
  2178. "CypherText: An Extensible Composing and Typesetting Language", C.G. Moore
  2179. et al, Proc FJCC 37, AFIPS (Fall 1970).
  2180.  
  2181. D - 
  2182.  
  2183.   1. "The Data Language."  MS-DOS 4GL.
  2184.  
  2185.   2. A Haskell-like language, with type classes.
  2186. info: polar@cs.syr.edu
  2187.  
  2188. DACAPO - Broad-range hardware specification language.  "Mixed Level
  2189. Modelling and Simulation of VLSI Systems", F.J. Rammig in Logic Design and
  2190. Simulation, E. Horbst ed, N-H 1986.
  2191.  
  2192. DACTL - Declarative Alvey Compiler Target Language.  U East Anglia.  An
  2193. intermediate language.  "DACTL - A Computational Model and Compiler Target
  2194. Language Based on Graph Reduction", J.R.W. Glauert et al, ICL Tech J 5(3)
  2195. (1987).  Version: Dactl0.  (See Lean, Parallel SML).
  2196.  
  2197. Daisy - Functional.  "Daisy Programming Manual", S.D. Johnson, CS Dept TR,
  2198. Indiana U, 1988.
  2199.  
  2200. DAISY 201 - Early system on G-15.  Listed in CACM 2(5):16 (May 1959).
  2201.  
  2202. DAP Fortran - "Efficient High Speed Computing with the Distributed Array
  2203. Processor", P.M. Flanders et al, pp.113-127 (1977). [same as Fortran-
  2204. Plus?]
  2205.  
  2206. DAPLEX - "The Functional Data Model and the Data Language DAPLEX", D.W.
  2207. Shipman, ACM Trans Database Sys, 6(1):140-173 (Mar 1981).
  2208.  
  2209. DARE - Differential Analyzer REplacement.  A family of simulation languages
  2210. for continuous systems.  "Digital Continuous System Simulation", G.A. Korn
  2211. et al, P-H 1978.
  2212.  
  2213. Darms - Music language.  "The Darms Project: A Status Report", R.F.
  2214. Erickson, Computers and the Humanities 9(6):291-298 (June 1975).
  2215.  
  2216. Dartmouth BASIC - Term for the original BASIC by Kemeny & Kurtz.
  2217.  
  2218. DAS - Digital Analog Simulator.  Represents analog computer design.
  2219.  
  2220. DASL - Datapoint's Advanced System Language.  Gene Hughes.  A cross between
  2221. C and Pascal with custom features for Datapoint hardware (no stack), used
  2222. internally by Datapoint.
  2223.  
  2224. Data/BASIC - Also known as Pick BASIC.  A BASIC-like language with database
  2225. capabilities, the main programming language on the Pick OS.  "The
  2226. Data/BASIC Language - A Data Processing Language for Non-Professional
  2227. Programmers", P.C. Dressen, Proc SJCC 36, AFIPS (Spring 1970).
  2228.  
  2229. DATABUS - DATApoint BUSiness Language.  Like an interpreted assembly
  2230. language, used for custom applications on Datapoint machines.
  2231.  
  2232. DATACODE I - Early system on Datatron 200 series.  Listed in CACM 2(5):16
  2233. (May 1959).
  2234.  
  2235. Data Parallel C - Hatcher & Quinn [?]
  2236.  
  2237. Data Structures Language - MAD dialect with extensions for lists and
  2238. graphics, on Philco 212.  "A Compiler Language for Data Structures", N.
  2239. Laurance, Proc ACM 23rd Natl Conf 36 (1968).
  2240.  
  2241. DATA-TEXT - Harvard.  Numerical computations in the Social Sciences. 
  2242. "DATA-TEXT Primer", D.J. Armor, Free Press 1972.
  2243.  
  2244. DataVis - Dataflow language for scientific visualization.  "Data Flow
  2245. Visual Programming Languages", D. Hils, J Vis Langs and Comput, Dec 1991.
  2246.  
  2247. dBASE - Language used by the dBASE system.  First release was dBASE II, ca
  2248. 1980.  (There never was a "dBASE I")  Later versions: dBASE III, dBASE
  2249. III+, and dBASE IV.
  2250.  
  2251. DBC - Data-parallel Bit-serial C.  SRC, Bowie MD.  Based on MPL.
  2252. info: maya@super.org
  2253.  
  2254. dBFAST - dBASE dialect for MS-DOS, MS-Windows.
  2255.  
  2256. DBPL - Procedural language with relational database constructs.  A
  2257. successor to Pascal/R and Modula/R.  "DBPL Report", J.W. Schmidt et al,
  2258. DBPL-Memo 111-88, Fachbereich Informatik, Johann Wolfgang
  2259. Goethe-Universitaet, Frankfurt, Germany, 1988.
  2260.  
  2261. dBXL - dBASE-like interpreter/language for MS-DOS from WordTech, Orinda,
  2262. CA.
  2263.  
  2264. DCALGOL - Data Communications ALGOL.  A superset of Burroughs Extended
  2265. ALGOL used for writing Message Control Systems.
  2266.  
  2267. DCDL - Digital Control Design Language.  A language for simulating computer
  2268. systems.  "DCDS Digital Simulating System", H. Potash et al, Proc FJCC 35,
  2269. AFIPS (Fall 1969).
  2270.  
  2271. DCG - A variant of BNF.
  2272.  
  2273. DCL - 
  2274.  
  2275.   1. DIGITAL Command Language.  The interactive command and scripting
  2276. language for VAX/VMS.
  2277.  
  2278.   2. Delphi Common LISP.  An implementation of Common LISP that has been
  2279. used as a basis for CLOS.
  2280.  
  2281. DDL - 
  2282.  
  2283.   1. "A Digital System Design Language" (DDL)", J.R. Duley, IEEE Trans on
  2284. Computers c-17(9):850-861 (Sep 1968).
  2285.  
  2286.   2. M. Urban, C. Kostanick et al, UCLA Computer Club.  An adventure
  2287. language, the forerunner of ADL.
  2288.  
  2289.   3. Data Definition Language.  Specification language for a database based
  2290. on the entity-relationship model.  Used in the Eli compiler-compiler to
  2291. manage type definitions.  "DDL Reference Manual", ECE Dept U Colorado,
  2292. 1991.
  2293.  
  2294. DDM - Dataflow language.  "The Architecture and System Method of DDM-1: A
  2295. Recursively Structured Data Driven Machine", A. Davis, Proc 5th Ann Symp
  2296. Comp Arch, IEEE 1978.
  2297.  
  2298. DEACON - Direct English Access and CONtrol.  English-like query system. 
  2299. Sammet 1969, p.668.
  2300.  
  2301. Delirium - An embedding coordinate language for parallel programming,
  2302. implemented on Sequent Symmetry, Cray, BBN Butterfly.  "Parallel
  2303. Programming with Coordination Structures", S. Lucco et al, 18th POPL,
  2304. pp.197-208 (1991).
  2305.  
  2306. Delta - 
  2307.  
  2308.   1. J.C. Cleaveland, 1978.  Expression-based. [?]
  2309.  
  2310.   2. Tandem.  A string-processing language with single-character commands.
  2311.  
  2312. Delta-Prolog - Prolog extension with AND-parallelism, don't-know
  2313. nondeterminism and interprocess communication using synchronous event
  2314. goals.  Distributed backtracking.  "Delta-Prolog: A Distributed Logic
  2315. Programming Language", L.M. Pereira et al, Intl Conf 5th Gen Comp Sys, Nov
  2316. 1984.
  2317.  
  2318. DEMON - Program generator for differential equation problems.  N.W.
  2319. Bennett, Australian AEC Research Establishment, AAEC/E142, Aug 1965.
  2320.  
  2321. Design System language - J. Gaffney, Evans & Sutherland 1976.  Interpretive
  2322. FORTH-like language for 3-D graphics databases.  Earliest forerunner of
  2323. both Interpress and PostScript.  Mentioned in PostScript Language Reference
  2324. Manual, Adobe Systems, A-W 1985.
  2325.  
  2326. DETAB - DEcision TABle.  A. Chapman, 1964.  Decision table preprocessor for
  2327. COBOL.  Sammet 1969, p.315.  Versions: DETAB 65, DETAB X.
  2328.  
  2329. DETOL - Directly Executable Test Oriented Language.  Simple language to
  2330. control a specific type of test equipment.  "Improved DETOL Programming
  2331. Manual for the Series 5500 Automatic Test System, Pub. 5500-31-0-1, AAI
  2332. Corp. (Sep 1973).
  2333.  
  2334. DEX - W. van Oortmerssen.  A cross between Modula-2 and C.
  2335. ftp: ux1.cso.uiuc.edu:pub/amiga/fish/ff743  Version 1.2 for Amiga
  2336.  
  2337. DFC - Dataflow language.
  2338.  
  2339. DG/L - 
  2340.  
  2341.   1. Descriptive Geometry Language.  Early CAD/CAE language, used light
  2342. pen.  "Interactive Graphic Consoles - Environment and Software", R.L.
  2343. Beckermeyeer, Proc FJCC 37 (1970).
  2344.  
  2345.   2. Data General ca 1973-1974.  Derivative of ALGOL 60, developed from
  2346. DG's Algol-5, used as the systems language under AOS and RDOS for the DG
  2347. Eclipse family of computers.  Replaced by PL/I in the early 80's.  Data
  2348. General manual 093-000229-01.
  2349.  
  2350. DIALOG - Illinois Inst Tech, 1966.  Interactive math using graphics tablet. 
  2351. "DIALOG: A Conversational Programming System with a Graphical Orientation",
  2352. S.H. Cameron et al, CACM 10:349-357 (1967).  Sammet 1969, p.255-258.
  2353.  
  2354. DIAMAG - An interactive extension of ALGOL.  Sammet 1969, p.195.
  2355.  
  2356. Diamond - One of five pedagogical languages based on Markov algorithms,
  2357. used in "Nonpareil, a Machine Level Machine Independent Language for the
  2358. Study of Semantics", B. Higman, ULICS Intl Report No ICSI 170, U London
  2359. (1968).  (cf. Brilliant, Nonpareil, Pearl[3], Ruby[2]).
  2360.  
  2361. DIANA - Descriptive Intermediate Attributed Notation for Ada.  Goos & Wulf,
  2362. CMU 1981.  A de facto standard intermediate representation for Ada
  2363. programs.  A tree-structured representation with an abstract interface
  2364. defined in IDL.  Resulted from a merger of AIDA and TCOL.Ada.  "DIANA - An
  2365. Intermediate Language for Ada", G.T. Goos et al, LNCS 161, Springer 1983.
  2366.  
  2367. DIBOL - DIgital Business Oriented Language.  DEC for RT-11.  FORTRAN syntax
  2368. with BCD arithmetic.
  2369.  
  2370. Dictionary APL - nickname for Sharp APL.
  2371.  
  2372. Dijkstra's guarded command language - Edsger Dijkstra, ca. 1974. 
  2373. Introduced the concept of guards and committed choice [=don't care]
  2374. nondeterminism.  Described and used in A Discipline of Programming, E.
  2375. Dijkstra, P-H 1976.
  2376.  
  2377. DIMATE - Depot Installed Maintenance Automatic Test Equipment.  For
  2378. automatic equipment tests, on RCA 301.  "A Simple User-Oriented Source
  2379. Language for Programming Automatic Test Equipment", B.H. Scheff, CACM 9(4)
  2380. (Apr 1966).  Sammet 1969, p.647.
  2381.  
  2382. Dino - Data parallel language, a superset of C.  "Dino: Summary and
  2383. Examples", M. Rosing et al, "Third Conf on Hypercube Concurrent Computers
  2384. and Appls", pp. 472-481, ACM 1988.
  2385. ftp: ftp.cs.colorado.edu:pub/cs/distribs/dino
  2386.  
  2387. Disiple - DSP language.  "A Compiler that Easily Retargets High Level
  2388. Language Programs for Different Signal Processing Architectures", J.E.
  2389. Peters & S.M. Dunn, Proc ICASSP 89, pp.1103-1106, (May 1989).
  2390.  
  2391. Dislang - "Dislang: A Distributed Programming Language/System", C. Li et
  2392. al, Proc 2nd Intl Conf Distrib Comp Sys, IEEE 1981, pp.162-172.
  2393.  
  2394. Distributed Eiffel - "Distributed Eiffel: A Language for Programming Multi-
  2395. Granular Distributed Objects on the Clouds Operating System", L. Gunaseelan
  2396. et al, IEEE Conf Comp Langs, 1992.
  2397.  
  2398. Distributed Processes - (Also "DP").  First concurrent language based on
  2399. remote procedure calls.  "Distributed Processes: A Concurrent Programming
  2400. Concept", P. Brinch Hansen CACM 21(11):934-940 (Nov 1978).
  2401.  
  2402. Distributed Smalltalk - "The Deisgn and Implementation of DIstributed
  2403. Smalltalk", J. Bennett, SIGPLAN Notices 22(12):318-330 (Dec 1980).
  2404.  
  2405. DL/1 - Query language, linear keyword.
  2406.  
  2407. DMAD - Diagnostic Machine Aid-Digital.  Functional testing of digital
  2408. devices.  "DMAD M/MM Manual", BR-8392, Raytheon Co. (Oct 1973).
  2409.  
  2410. DMALGOL - ALGOL with extensions to interface to DMS II, the Burroughs
  2411. database.
  2412.  
  2413. DML - 
  2414.  
  2415.   1. Data Management Language.  Early ALGOL-like language with lists,
  2416. graphics, on Honeywell 635.  "DML: A Data Management Language", D.W. Bray
  2417. et al, GE, Syracuse NY.
  2418.  
  2419.   2. "DML: A Meta-language and System for the Generation of Practical and
  2420. Efficient Compilers from Denotational Specifications", M. Pettersson et al,
  2421. IEEE Conf Comp Langs, 1992.
  2422.  
  2423. Doc - Directed Oc.  "Programming Language Doc and Its Self-Description, or
  2424. 'X=X Is Considered Harmful'", M. Hirata, Proc 3rd Conf Japan Soc Soft Sci
  2425. Tech, pp.69-72 (1986).
  2426.  
  2427. DOCUS - Display Oriented Computer Usage System.  Interactive system using
  2428. push buttons.  Sammet 1969, p.678
  2429.  
  2430. DOUGLAS - Early system on IBM 701.  Listed in CACM 2(5):16 (May 1959).
  2431.  
  2432. DOL - Display Oriented Language.  Subsystem of DOCUS.  Sammet 1969, p.678.
  2433.  
  2434. DOW COMPILER - Early system on Datatron 200 series.  Listed in CACM 2(5):16
  2435. (May 1959).
  2436.  
  2437. d-Prolog - Prolog extended with defeasible reasoning.
  2438. ftp: aisun1.ai.uga.edu:ai.prolog/dprolog for MS-DOS and Unix
  2439.  
  2440. DPL-82 - "DPL-82: A LAnguage for Distributed Processing", L. Ericson, PRoc
  2441. 3rd Intl Conf Distrib Comp Sys, IEEE 1982, pp.526-531.
  2442.  
  2443. DPS - Real-time language with direct expression of timing requests. 
  2444. "Language Constructs for Distributed Real-Time PRogramming", I. Lee et al
  2445. Proc IEEE Real-Time Sys Symp pp.57-66 (Dec 1985).
  2446.  
  2447. draco - Chris Gray, 1987.  A blend of Pascal, C and ALGOL 68.  Implemented
  2448. for CP/M-80 and Amiga.
  2449.  
  2450. DRAGON - Implementation language used by BTI Computer Systems.
  2451. info: Pat Helland <helland@hal.com>
  2452.  
  2453. DRAGOON - Colin Atkinson, Imperial College 1989.  (current address:
  2454. <atkinson@cl.uh.edu>, U Houston-Clear Lake).  Ada-based language, bringing
  2455. object-oriented programming to embeddable systems.  Presently implemented
  2456. as a preprocessor to Ada.  "Object-Oriented Reuse, Concurrency and
  2457. Distribution: An Ada-Based Approach", C. Atkinson, A-W 1991, ISBN 0-2015-6-
  2458. 5277.
  2459. info: adimaio@vms.eurokom.ie
  2460.  
  2461. DRUCO I - Early system on IBM 650.  Listed in CACM 2(5):16 (May 1959).
  2462.  
  2463. DSL - 
  2464.  
  2465.   1. Digital Simulation Language.  Extensions to FORTRAN to simulate analog
  2466. computer functions.  "DSL/90 - A Digital Simulation Program for Continuous
  2467. System Modelling", Proc SJCC 28, AFIPS (Spring 1966).  Version: DSL/90 for
  2468. the IBM 7090.  Sammet 1969, p.632.
  2469.  
  2470.   2. Denotational Semantics Language.  Specification language used by the
  2471. SIS compiler generator.  "SIS - Semantics Implementation System", P.D.
  2472. Mosses, TR DAIMI MD-30, Aarhus U, Denmark.
  2473.  
  2474. DSM - 
  2475.  
  2476.   1. Data Structure Manager.  J.E. Rumbaugh and M.E. Loomis, GE.  Object-
  2477. oriented language similar to C++, used in implementation of CAD/CAE
  2478. software.  DSM is written in itself and C, and produces C as output.  "DSM:
  2479. An Object-Relationship Modeling Language", A. Shah et al, SIGPLAN Notices
  2480. 24(10):191-202 (OOPSLA '89) (Oct 1989).
  2481.  
  2482.   2. DIGITAL Standard MUMPS.  DEC.  (See MUMPS).
  2483.  
  2484. DSP/C - Numerical extension to C, for DSP applications.  "DSP/C: A Standard
  2485. High Level Language for DSP and Numeric Processing", K. Leary & W.
  2486. Waddington, Proc ICASSP 90, Apr 1990, pp.1065-1068.
  2487.  
  2488. DSP32 Assembly Language - A high-level assembly language for the DSP32
  2489. Programmable DSP Chip.
  2490.  
  2491. DSPL:  Digital Signal Processing Language.  A C-derived DSP language.  "The
  2492. Programming Language DSPL", A. Schwarte & H. Hanselmann, Proc PCIM 90,
  2493. 1990.
  2494.  
  2495. DTALGOL - Decision Table Algol.  Victoria U, Wellington.  An ALGOL superset
  2496. that added Decision Tables.  On Burroughs Large System.
  2497.  
  2498. DUAL-607 - Early system on IBM 701.  Listed in CACM 2(5):16 (May 1959).
  2499.  
  2500. Dual FCP - [?]
  2501.  
  2502. Durra - "Durra: A Task-level Description Language", M.R. Barbacci et al,
  2503. CMU/SEI-86-TR-3, CMU 1986.
  2504.  
  2505. DYANA - DYnamics ANAlyzer.  Early specialized language for vibrational and
  2506. other dynamic systems.  Sammet 1969, p.628.
  2507.  
  2508. Dylan - (named for Dylan Thomas)  Advanced Technology Group East, Apple
  2509. Computer.  A simple object-oriented LISP dialect, most closely resembles
  2510. CLOS and Scheme.  "Dylan, an Object-Oriented Dynamic Language", Apple 1992.
  2511. ftp: crl.dec.com:pub/DEC/Thomas - compiler implemented in Scheme
  2512. info: dylan-manual-request@cambridge.apple.com
  2513.  
  2514. DYNAMO - DYNamic MOdels.  Phyllis Fox & A.L. Pugh, 1959.  Continuous
  2515. simulation including economic, industrial and social systems.  Versions:
  2516. DYNAMO II, DYNAMO II/370, DYNAMO II/F, DYNAMO III and Gaming DYNAMO. 
  2517. "DYNAMO User's Manual", A.L. Pugh, MIT Press 1976.
  2518.  
  2519. DYSAC - Digital Simulated Analog Computer.  Sammet 1969, p.629.
  2520.  
  2521. DYSTAL - DYnamic STorage ALlocation.  Adds lists, strings, sorting,
  2522. statistics and matrix operations to FORTRAN.  Sammet 1969, p.388.  "DYSTAL:
  2523. Dynamic Storage Allocation Language in FORTRAN", J.M. Sakoda, in Symbol
  2524. Manipulation Languages and Techniques, D.G. Bobrow ed, N-H 1971, pp.302-
  2525. 311.
  2526.  
  2527. E - An extension of C++ with database types and persistent objects.  Used
  2528. in the Exodus database system.  "Persistence in the E Language: Issues and
  2529. Implementation", J.E. Richardson et al, Soft Prac & Exp 19(12):1115-1150
  2530. (Dec 1989).
  2531.  
  2532. Eagle - dBASE-like dialect bundled with Emerald Bay, sold by Migent from
  2533. 1986-1988, later renamed Vulcan when Wayne Ratliff reacquired the product.
  2534.  
  2535. Ease - General purpose parallel programming language, combining the process
  2536. constructs of CSP and the distributed data structures of Linda. 
  2537. "Programming with Ease: Semiotic Definition of the Language", S.E. Zenith,
  2538. <zenith-steven@yale.edu> Yale U TR-809, Jul 1990.
  2539.  
  2540. EASE II - Early system on IBM 650.  Listed in CACM 2(5):16 (May 1959).
  2541.  
  2542. EASIAC - Early system on Midac computer.  Listed in CACM 2(5):16 (May
  2543. 1959).
  2544.  
  2545. EASY FOX - Early system on JOHNNIAC computer.  Listed in CACM 2(5):16 (May
  2546. 1959).
  2547.  
  2548. EBASIC - Gordon Eubanks, now at Symantec.  Form of BASIC that led to
  2549. CBASIC.
  2550.  
  2551. ECAP II - Electronic Circuit Analysis Program.  Simple language for
  2552. analyzing electrical networks.  "Introduction to Computer Analysis: ECAP
  2553. for Electronics Technicians and Engineers", H. Levin, P-H 1970.
  2554.  
  2555. Echidna - Constraint logic programming embedded in an object-oreinted
  2556. language.  The syntax is an extension of Edinburgh Prolog.  "Hierarchical
  2557. Arc Consistency Applied to Numeric Processing in Constraint Logic
  2558. Programming", G. Sidebottom et al, TR-91-06, CSS-IS, Simon Fraser U, and
  2559. Comp Intell 8(4) (1992).
  2560. ftp:cs.sfu.edu:pub/ecl/papers
  2561. info: expert@cs.sfu.edu
  2562.  
  2563. ECL -  Extensible CL.  Wegbreit, ca 1970.  "The ECL Programming System", B.
  2564. Wegbreit, Proc FJCC 39:253-261, AFIPS (Fall 1971).  "ECL Programmer's
  2565. Manual", B. Wegbreit, TR 23-74, Harvard U (Dec 1974).
  2566.  
  2567. ECMA - Subset of ALGOL.  Sammet 1969, p.180.
  2568.  
  2569. ECP - Extended Concurrent Prolog.  Concurrent Prolog with OR parallelism,
  2570. set abstraction and meta-inference features.  "AND-OR Queuing in Extended
  2571. Concurrent Prolog", J. Tanaka et al, Proc Logic Prog Conf '85, LNCS 193,
  2572. Springer 1985. [???]
  2573.  
  2574. ECRC-Prolog - Evidently Prolog with coroutine extensions.  "ECRC-Prolog
  2575. User's Manual Version 1.0", K. Estenfeld, TR-LP-08 ECRC, Feb 1986.  (See
  2576. SEPIA).
  2577.  
  2578. ECSP - An extension to CSP, supporting dynamic communication channels and
  2579. nested processes.  "Static Type Checking of Interprocess Communication in
  2580. ECSP", F. Baiardi et al, SIGPLAN Notices 19(6):290-299 (June 1984).
  2581.  
  2582. ECSS II - Extendable Computer System Simulator.  An extension of SIMSCRIPT
  2583. II.  "The ECSS II Language for Simulating Computer Systems", D.W. Kosy, R-
  2584. 1895-GSA, Rand Corp.
  2585.  
  2586. ECSSL - Formerly APSE.  Equation-oriented specifications for continuous
  2587. simulations.  The compiler outputs HYTRAN, which must be run on an analog
  2588. processor.
  2589.  
  2590. Eden - Concurrent object-oriented language with both synchronous and
  2591. asynchronous message passing.  "The Eden System: A Technical Review", G.
  2592. Almes et al, IEEE Trans Soft Eng SE-11(1):43-59 (Jan 1985).
  2593.  
  2594. EDIF - 
  2595.  
  2596.   1. Electronic Design Interchange Format.  Not a programming language, but
  2597. a format to simplify data transfer between CAD/CAE systems.  LISP-like
  2598. syntax.  "EDIF Electronic Design Interchange Format Version 200", ANSI/EIA
  2599. Standard 548.
  2600. info: edif-support@cs.man.ac.uk
  2601. ftp: ic.berkeley.edu:pub/edif
  2602.  
  2603.   2. VLSI design specification language.  "Designer's Guide to EDIF", E.
  2604. Marx et al, EDN 1987. [?]
  2605.  
  2606. Edinburgh Prolog - Prolog dialect which eventually developed into the
  2607. standard, as opposed to Marseille Prolog.  (The difference is largely
  2608. syntax.)  Clocksin & Mellish describe Edinburgh Prolog.  Version: C-Prolog.
  2609.  
  2610. Edison - 
  2611.  
  2612.   1. (named for the American inventor Thomas Edison (1847-1931))  Brinch
  2613. Hansen.  A simplified Pascal, with modules and concurrency (cobegin/coend). 
  2614. "Edison - A Multiprocessor Language", P. Brinch Hansen, CS Dept, USC, Sep
  2615. 1980.  "Programming a Personal Computer", Brinch Hansen, P-H 1977.
  2616.  
  2617.   2. Adds an OPS5-like system to C.  Translated by preprocessor into C. 
  2618. "Edison, A Unix and C Friendly Rete Based Production System", B. Thirion,
  2619. SIGPLAN Notices 27(1):75-84 (Jan 1992).
  2620.  
  2621. EDL - 
  2622.  
  2623.   1. Experiment Description Language.  J.S. Jenkins.  "A Programmable
  2624. System for Acquisition and Reduction of Respiratory Physiological Data",
  2625. J.S. Jenkins et al, Ann Biomed Eng, 17:93-108 (1989).
  2626.  
  2627.   2. Event Description Language.  "EDL: A Basis for Distributed System
  2628. Debugging Tools", P.C. Bates et al, in Proc Hawaii Intl Conf on Sys Sci,
  2629. Jan 1982, pp.86-93.
  2630.  
  2631. EFL - Extended FORTRAN Language.  Preprocessor for FORTRAN to provide
  2632. structured programming much like C.  A descendant of RATFOR, written in C. 
  2633. "An Informal Description of EFL", S.I. Feldman.
  2634.  
  2635. Eh - "A".  Software Portability Group, U Waterloo.  A typeless language
  2636. derived from (and similar to) B.  Provides guaranteed order of evaluation
  2637. for side effects in expressions.  Also character indexing operators.  "Eh
  2638. Reference Manual", R.S.C. Braga, RR CS-76-45, U Waterloo, Nov 1976.  (See
  2639. Zed.)
  2640.  
  2641. Eiffel - Bertrand Meyer <bertrand@eiffel.com> ca. 1986.  An object-
  2642. oriented language.  Classes with multiple and repeated inheritance,
  2643. deferred classes (like Smalltalk's abstract class), and clusters of
  2644. classes.  Objects can have both static and dynamic types.  The dynamic type
  2645. must be a descendant of the static (declared) type.  Dynamic binding
  2646. resolves clashes from the multiple inheritance.  Flattened forms of
  2647. classes, in which all of the inherited features are added at the same
  2648. level.  Generic classes parametrized by type.  Persistent objects, garbage
  2649. collection, exception handling, interface to routines written in other
  2650. languages.  Implemented as a preprocessor to C.  "Eiffel: the Language",
  2651. Bertrand Meyer, P-H 1990.  Interactive Software Eng, Goleta CA, (805) 685-
  2652. 1006.  Version 2.3, Eiffel-3 (See Sather).
  2653. info: queries@eiffel.com
  2654.  
  2655. EL1 -  Extensible Language One.  B. Wegbreit, Harvard ca 1974.  An
  2656. extensible language, internally somewhat LISP-like, but fully typed with
  2657. records and pointers.  The external syntax is Algol-like and extensible,
  2658. supporting user-defined data structures, control structures and operations. 
  2659. The parser is table-driven, with a modifiable set of productions.  Used as
  2660. the basis for the ECL operating system. "Studies in Extensible Programming
  2661. Languages", B. Wegbreit, Garland Pub 1980.
  2662.  
  2663. el(alpha) - Aims to be a high-level language that knows about real
  2664. hardware, for systems programming.  "Essential Language el(alpha) - A
  2665. Reduced Expression Set Language for Systems Programming", T. Watanabe et
  2666. al, SIGPLAN Notices 26(1):85-98.
  2667.  
  2668. Elan - "Top-down Programming with Elan", C.H.A. Koster, Ellis Horwood 1987.
  2669.  
  2670. ELF - Binary format used by System V Release 4 Unix.
  2671.  
  2672. ELI - 
  2673.  
  2674.   1. Early system on IBM 705, IBM 650.  Listed in CACM 2(5):16 (May 1959).
  2675.  
  2676.   2. Embedded Lisp Interpreter.  Bob Glickstein <bobg@andrew.cmu.edu> 
  2677. Small Common Lisp-like interpreter embedded in the Andrew mail system.
  2678.  
  2679. ELISP - Chuck Hedrick, Rutgers.  Implemented originally for DEC-20's, later
  2680. used as the LISP in EMACS.
  2681.  
  2682. Elk - Extension Language Kit.  Oliver Laumann <net@tub.cs.tu-berlin.edu>,
  2683. Tech U Berlin.  A Scheme interpreter, easily extendable with new types and
  2684. primitive procedures.  First-class environments, dynamic-wind, fluid-let,
  2685. macros, dynamic loading of object files, autoloading, and a dump.
  2686. ftp: export.lcs.mit.edu:contrib/elk-1.4.tar.Z
  2687.  
  2688. ELLA - Hardware description language.  "The Design Rationale of ELLA, A
  2689. Hardware Design and Description Language", J.D. Morison et al, in Computer
  2690. Hardware Description Languages and their Applications, C.J. Koomen et al
  2691. eds, N-H 1985.
  2692.  
  2693. Ellie - Object-oriented language with fine-grained parallelism for
  2694. distributed computing.  Based on BETA, Smalltalk, and others.  Parallelism
  2695. by unbounded RPC and 'future' objects.  Synchronization by 'dynamic
  2696. interfaces.  Classes, methods, blocks and objects all modeled by first-
  2697. class 'Ellie objects'.  Genericity, polymorphism and
  2698. delegation/inheritance.  "Ellie Language Definition Report", Birger
  2699. Andersen <birger@diku.dk>, SIGPLAN Notices 25(11):45-65 (Nov 1990).
  2700. doc: diku.dk:ellie/papers
  2701.  
  2702. ELLIS - EuLisp LInda System.  An object-oriented Linda system written for
  2703. EuLisp.  "Using Object-Oriented Mechanisms to Describe Linda", P. Broadbery
  2704. <pab@maths.bath.ac.uk> et al, in Linda-Like Systems and Their
  2705. Implementation, G. Wilson ed, U Edinburgh TR 91-13, 1991.
  2706.  
  2707. ELP - 
  2708.  
  2709.   1. English Language Programs.  Language for testing avionics equipment,
  2710. on Varian 620/i.  "Multiband Automatic test Equipment - A Computer
  2711. Controlled Checkout System", T. Kuroda et al, Proc SJCC, 38 (1971).
  2712.  
  2713.   2. Equational Logic Programming.  O'Donnell <odonnell@cs.uchicago.edu>. 
  2714. Semantically pure, fully lazy.  "Equational Logic as a Programming
  2715. Language", M.J. O'Donnell, MIT Press 1985.  Current version: 4.2.
  2716. ftp: gargoyle.uchicago.edu for Sun and DEC.
  2717.  
  2718. ELSIE - A distributed version of ELLIS.  "Using Object-Oriented Mechanisms
  2719. to Describe Linda", P. Broadbery <pab@maths.bath.ac.uk> et al, in Linda-
  2720. Like Systems and Their Implementation, G. Wilson ed, U Edinburgh TR 91-13,
  2721. 1991.
  2722.  
  2723. EM-1 - A stack-oriented intermediate language, used by the Amsterdam
  2724. Compiler Kit.
  2725. info: Andrew Tanenbaum <ast@cs.vu.nl>, Vrije U, Amsterdam.
  2726.  
  2727. EMA - Extended Mercury Autocode.  (See Autocode).
  2728.  
  2729. EMACS LISP - Richard Stallman.  Variant of LISP used by the EMACS editor. 
  2730. (This is the "offical" name, based on the EMACS FAQ file.  See ELISP.)
  2731.  
  2732. Emerald - U Washington, early 80's.  The successor of EPL[3].  An
  2733. object-oriented distributed programming language/environment.  Strongly
  2734. typed, uses signatures and prototypes rather than inheritance. 
  2735. "Distribution and Abstract Types in Emerald", A. Black et al, IEEE Trans
  2736. Soft Eng SE-13(1):65-76 (Jan 1987).
  2737.  
  2738. EML - Extended ML.  A language for formally specifying SML programs. 
  2739. "Formal Program Development in Extended ML for the Working Programmer", D.
  2740. Sannella, Proc 3rd BCS/FACS Workshop on Refinement", Springer 1990.
  2741.  
  2742. English - Database language used in the Pick OS.  "Exploring the Pick
  2743. Operating System", J.E. Sisk et al, Hayden 1986.
  2744.  
  2745. EOL - Expression Oriented Language.  A low-level language for strings. 
  2746. "EOL - A Symbol Manipulation Language", L. Lukaszewicz,  Computer J
  2747. 10(1):53 (May 1967). Versions: EOL-1, EOL-2, EOL-3.
  2748.  
  2749. EPILOG -
  2750.  
  2751.   1. Extended Programming In LOGic.  PROLOG with several AND's having
  2752. different time constraints.  "Epilog: A Language for Extended Programming
  2753. in Logic", A. Porto in Implementations of Prolog, J.A. Campbell ed, Ellis
  2754. Horwood 1984.
  2755.  
  2756.   2. A data-driven PROLOG, with both AND and OR parallelism.  "EPILOG =
  2757. PROLOG + Data Flow", M.J. Wise, SIGPLAN Noices 17:80-86 (1982).
  2758.  
  2759. EPL -
  2760.  
  2761.   1. Early PL/I.  McIlroy, Morris et al.  PL/I subset dialect, the first
  2762. running PL/I compiler.  Used by Bell Labs and MIT to write Multics, EPL had
  2763. extensions to handle the segment/offset nature of Multics pointers.  "EPL
  2764. Reference Manual", Project MAC, April 1966.  Sammet 1969, p.542.  (See
  2765. REPL, TMG)
  2766.  
  2767.   2. Experimental Programming Language.  David May.  Influenced occam. 
  2768. "EPL: An Experimental Language for Distributed Computing", D.C. May, in
  2769. Trends and Applications: Distributed Processing Proceedings, NBS, pp.69-71.
  2770.  
  2771.   3. Eden Programming Language.  U Washington.  Based on Concurrent Euclid
  2772. and used with the Eden distributed OS.  Influenced Emerald and Distributed
  2773. Smalltalk.  "EPL Programmer's Guide", A. Black et al, U Washington June
  2774. 1984.
  2775.  
  2776.   4. Equational Programming Language. Szymanski, RPI.  Equational language
  2777. for parallel scientific applications.  "EPL - Parallel Programming with
  2778. Recurrent Equations", B. Szymanski in Parallel Functional Languages and
  2779. Compilers, B. Szymanski et, A-W 1991.
  2780.  
  2781. EPROS - A specification/prototyping language.  Implemented in Franz Lisp. 
  2782. "Software Prototyping, Formal Methods and VDM", Sharam Hekmatpour et al, A-
  2783. W 1988.
  2784. ftp:utsun.s.u-tokyo.jp:lang/epros
  2785.  
  2786. EPSIMONE - Concurrent simulation language derived from Simone.  "EPSIMONE
  2787. Manual", J. Beziin et al, Pub Int No 90, IRISA, Sept 1978.
  2788.  
  2789. EqL - An equational language.  Bharat Jayaraman <bharat@cs.buffalo.edu>. 
  2790. "EqL: The Language and its Implementation", B. Jayaraman et al, IEEE Trans
  2791. Soft Eng SE-15(6):771-780 (June 1989).
  2792.  
  2793. EQLog - OBJ2 plus logic programming based on Horn logic with equality. 
  2794. "EQLog: Equality, Types and Generic Modules for Logic Programming", J.
  2795. Goguen et al in Functional and Logic Programming, D. DeGroot et al eds,
  2796. pp.295-363, P-H 1986.
  2797.  
  2798. Eqn - Language for typesetting mathematics.  "A System for Typesetting
  2799. Mathematics", B.W. Kernighan and L.L. Cherry, CACM 18(3):151-157 (Mar
  2800. 1975).
  2801.  
  2802. Equel - Embedded Quel.  INGRES, Inc.  Combines QUEL theories with C code.
  2803.  
  2804. Erlang - Armstrong, Williams & Virding, Ellemtel, Sweden.  Concurrent
  2805. functional programming language for real-time systems.  Explicit
  2806. concurrency, asynchronous message passing.  "Erlang - an Experimental
  2807. Telephony Programming Language", J.L. Armstrong et al, 13th Intl Switching
  2808. Symposium, Stockholm 1990.  Interpreter in SICStus Prolog, compilers in C
  2809. and in Erlang, for several Unix platforms.
  2810. info: erlang@erix.ericsson.se
  2811.  
  2812. ERFPI - Early system on LGP-30 computer.  Listed in CACM 2(5):16 (May
  2813. 1959).
  2814.  
  2815. ES-1 - Early text editing interpreter.  Sammet 1969, p.684.
  2816.  
  2817. ESCAPE - Early system on IBM 650.  Listed in CACM 2(5):16 (May 1959).
  2818.  
  2819. ESI - Dialect of JOSS.  Sammet 1969, p.217.
  2820.  
  2821. esim - A simulation language for VLSI, at the switch level.  Primitives are
  2822. nodes and transistors.  C.M. Baker et al, "Tools for Verifying Integrated
  2823. CIrcuit Design", Lambda 1(3):22-30 (1980).
  2824.  
  2825. ESP -
  2826.  
  2827.   1. Extra Simple Pascal.  Subset of Pascal.
  2828.  
  2829.   2. Econometric Software Package.  Statistical analysis of time series. 
  2830. "Econometric Software Package, User's Manual", J.P. Cooper, Graduate School
  2831. of Business, U Chicago.  Sammet 1978.
  2832.  
  2833.   3. Extended Self-containing Prolog.  Chikayama.  An object-oriented
  2834. extension of KL0.  Backtracking-based control, unification-based parameter
  2835. passing, object-oriented calling.  An object in ESP is an axiom set.  A
  2836. class definition consists of nature definitions (inheritance), slot
  2837. definitions (class variables) and clause definitions.  Multiple inheritance
  2838. similar to Flavors.  Implemented for ICOT's PSI Sequential Inference
  2839. machine.  "Unique Features of ESP", T. Chikayama, Proc Intl Conf 5th Gen
  2840. Comp Sys, ICOT 1984.  (See CESP)
  2841. info: k-hata@air.co.jp
  2842.  
  2843.   4. Early symbolic math system.  A. Rom, Celest Mech 3:331-345 (1971).
  2844.  
  2845. ESPOL - An ALGOL superset used to write the MCP (Master Control Program) on
  2846. Burroughs 6700.  Superseded by NEWP.  "The B6700 ESPOL Reference Manual",
  2847. Burroughs, 1970.
  2848.  
  2849. Estelle - A Pascal extension for specification of computer network
  2850. protocols.  Protocols are described by modules which are communicating
  2851. NFA's.  Modules are arranged in a dynamic hierarchy and communicate at
  2852. named interaction points.  "The Formal Description Technique Estelle", M.
  2853. Diaz et al eds, N-H 1989.  Adopted by CCITT.  ISO standard IS 9074.
  2854. ftp: osi.ncsl.nist.gov:pub/osikit/estpc      Compiles Estelle into C
  2855.                                   petdingo   Translates Estelle into C++
  2856.  
  2857. Esterel - Distributed language for synchronous interaction of real-time
  2858. systems with their environment.  Uses explicit timing requests.  Esterel
  2859. programs are compiled into finite automata.  "The ESTEREL Programming
  2860. Language and its Mathematical Semantics", G. Berry & L. Cosserat, TR 327,
  2861. INRIA, 1984.
  2862.  
  2863. ET - Bernd Gersdorf, U Bremen.  An integration of functional and logic
  2864. programming.
  2865.  
  2866. ET++ - Weinand, UBILAB Zurich.  A smalltalk-like system built on C++.
  2867. ftp: cse.ogi.edu
  2868.  
  2869. ETC - ExTendible Compiler.  FORTRAN-like, macro extendible.  "ETC - An
  2870. Extendible Macro-Based Compiler", B.N. Dickman, Proc SJCC 38 (1971).
  2871.  
  2872. ETHER - Concurrent object-oriented language?
  2873.  
  2874. Euclid - (named for the Greek geometer, fl ca 300 BC.)  A Pascal descendant
  2875. for development of verifiable system software.  No goto, no side effects,
  2876. no global assignments, no functional arguments, no nested procedures, no
  2877. floats, no enumeration types.  Pointers are treated as indices of special
  2878. arrays called collections.  To prevent aliasing, Euclid forbids any overlap
  2879. in the list of actual parameters of a procedure.  Each procedure gives an
  2880. imports list, and the compiler determines the identifiers that are
  2881. implicitly imported.  Iterators.   "Report on the Programming Language
  2882. Euclid", B.W. Lampson et al, SIGPLAN Notices 12(2):1-79 (Feb 1977).
  2883.  
  2884. EULER - (named for the Swiss mathematician Leonhard Euler (1707-1783)) 
  2885. Revision of ALGOL.  A small predecessor of Pascal.  "EULER: A
  2886. Generalization of ALGOL and Its Formal Definition", N. Wirth, CACM 9(1)
  2887. (Jan 1966) and 9(2) (Feb 1966).
  2888.  
  2889. EuLisp - 1985-present.  LISP dialect intended to be a common European
  2890. standard, with influences from Common LISP, Le LISP, Scheme and T.  First-
  2891. class functions, classes and continuations, both static and dynamic scope,
  2892. modules, support for parallelism.  The class system (TELOS) incorporates
  2893. ideas from CLOS, ObjVLisp and Oaklisp.
  2894. info: eudist@maths.bath.ac.uk
  2895. ftp: ftp.bath.ac.uk:pub/eulisp/feel-0.70.tar.Z (Free and Eventually Eulisp)
  2896.  
  2897. Eva - A toy ALGOL-like language used in Formal Specification of Programming
  2898. Languages:  A Panoramic Primer, F. G. Pagan, P-H 1981.
  2899.  
  2900. EXAPT - EXtended APT.
  2901.  
  2902. EXEC - Early batch language for IBM VM/CMS systems.  SC19-6209 Virtual
  2903. Machine/ System Product CMS Command and Macro Reference (Appendix F. CMS
  2904. EXEC Control Statements)
  2905.  
  2906. EXEC2 - IBM, late 70's.  SC24-5219 Virtual Machine/System Product EXEC 2
  2907. Reference.  Superseded by REXX.
  2908.  
  2909. Express - Concurrency through message-passing to named message queues.
  2910.  
  2911. Extended ALGOL - Used to write the ESPOL compiler on Burroughs B5500,
  2912. B6700.  "Burroughs B6700 Extended ALGOL Language Information Manual", No.
  2913. 5000128 (Jul 1971)  Sammet 1969, p.196.
  2914.  
  2915. Extended C++ - G. Masotti <masotti@lipari.usc.edu> Extensions to C++
  2916. including preconditions, postconditions, class invariants, parametrized
  2917. classes, exception handling and garbage collection.  Implemented as a
  2918. preprocessor to C++.
  2919. ftp: ftp.uu.net:languages/misc/EC++.tar.Z
  2920.  
  2921. Extended ML - Don Sanella, Edinburgh.  Algebraic specification meets
  2922. functional programming.  "Program Specification and Development in Standard
  2923. ML", D. Sannella et al, 12th POPL, ACM 1985.
  2924.  
  2925. EXTRA - Object-oriented, Pascal style, handles sets.  "A Data Model and
  2926. Query Language for EXODUS", M.J. Carey et al, SIGMOD 88 Conf Proc, pp.413-
  2927. 423, ACM SIGMOD Record 17:3 (Sept 1988).
  2928.  
  2929. EZ - High-level string-processing language derived from SNOBOL4, SL5 and
  2930. Icon.  "The EZ Reference Manual", C.W. Fraser et al, CS TR 84-1, U Arizona,
  2931. 1984.
  2932.  
  2933. FAC - Functional Array Calculator.  APL-like but purely functional and
  2934. lazy, allowing infinite arrays.  "FAC: A Functional APL Language", H.-C. Tu
  2935. and A.J. Perlis, IEEE Trans Soft Eng 3(1):36-45 (Jan 1986).
  2936.  
  2937. Facile - ECRC.  A concurrent extension of ML.  "Facile: A Symmetric
  2938. Integration of Concurrent and Functional Programming", A. Giacalone
  2939. <ag@ecc.de> et al, Intl J Parallel Prog 18(2):121-160 (Apr 1989).
  2940.  
  2941. FACT - Fully Automated Compiling Technique.  ca. 1959.  Pre-COBOL
  2942. English-like business DP language for Honeywell 800.  (Aka Honeywell-800
  2943. Business Compiler.)  Sammet 1969, p.327.
  2944.  
  2945. FAD - "FAD, A Simple and Powerful Database Language", F. Bancilon et al,
  2946. Proc 13th Intl Conf on VLDB, Brighton England, Sept 1987.
  2947.  
  2948. FAIR - Early system on IBM 705.  Listed in CACM 2(5):16 (May 1959).
  2949.  
  2950. FAP - Assembly language for Sperry-Rand 1103 and 1103A.  Listed in CACM
  2951. 2(5):16 (May 1959).
  2952.  
  2953. FAS - General purpose language sponsored by the Finnish government in the
  2954. 70's and 80's.
  2955.  
  2956. FASE - Fundamentally Analyzable Simplified English.  L.E. McMahon, Bell
  2957. Labs.  Sammet 1969, p.720.
  2958.  
  2959. FAST - FORTRAN Automatic Symbol Translator.  Assembly language on IBM 650
  2960. by MITRE Corp.  Listed in CACM 2(5):16 (May 1959).  Sammet 1969, p.526.
  2961.  
  2962. FC - Functional language.  "FC Manual", L. Augustsson, Memo 13, Programming
  2963. Methodology Group, Chalmers U, Sweden 1982.
  2964.  
  2965. F-code - Code for the FPM abstract machine, an optimized SECD machine. 
  2966. "FP/M Abstract Syntax Description", R. Bailey, Dept Computing, Imperial
  2967. College, U London, 1985.
  2968.  
  2969. FCP - Flat Concurrent Prolog.  "Design and Implementation of Flat
  2970. Concurrent Prolog", C. Mierowsky, TR CS84-21 Weizmann Inst, Dec 1984.
  2971.  
  2972. Feel - Free and Eventually EuLisp.  An initial implementation of EuLisp.
  2973. ftp: ftp.bath.ac.uk:pub/eulisp/feel-0.70.tar.Z
  2974.  
  2975. FEL - Function Equation Language.  Programs are sets of definitions. 
  2976. Sequences are lists stored in consecutive memory.  "FEL Programmer's
  2977. Guide", R. M. Keller, AMPS TR 7, U Utah, March 1982.
  2978.  
  2979. FFP - Formal FP.  Similar to FP, but with regular sugarless syntax, for
  2980. machine execution.  "Can Programming be Liberated From the von Neumann
  2981. Style?  A Functional Style and Its Algebra of Programs", John Backus, 1977
  2982. Turing Award Lecture, CACM 21(8):165-180 (Aug 1978).  (See FP, FL).
  2983.  
  2984. FGHC - Flat GHC.  A variant of GHC in which guard calls can be only to
  2985. primitives.  (See KL1).
  2986.  
  2987. FGL - 
  2988.  
  2989.   1. Flow Graph Lisp.  A distributed dataflow language for AMPS
  2990. (Applicative Multi-Processing System).  "A Loosely-Coupled Applicative
  2991. Multi-Processing System", R. Keller et al, NCC, AFIPS June 1979, pp.613-
  2992. 622.
  2993.  
  2994.   2. Function Graph Language.  Related to FEL.
  2995.  
  2996. FGL+LV - "Functional Programming and the Logical Variable", G. Lindstrom,
  2997. POPL 1985, pp.266-280.
  2998.  
  2999. FGRAAL - FORTRAN extended GRAph Algorithmic Language.  A FORTRAN extension
  3000. for handling sets and graphs.  "On a Programming Language for Graph
  3001. Algorithms", W.C. Rheinboldt et al, BIT 12(2) 1972.
  3002.  
  3003. FIDO - FInite DOmains.  A constraint language implemented on top of Prolog.
  3004. ftp: minnehaha.rhrk.uni-kl.de:pub/languages/fido/fido2
  3005.  
  3006. File Composition - Typesetting language.  "File Composition System
  3007. Reference Manual", No. 90388, Information Intl.
  3008.  
  3009. F+L - Equational clauses within function definitions to solve for logical
  3010. variable bindings.  ""Functions plus Logic in Theory and Practice", R.B.
  3011. Kieburtz, Feb 1987, unpublished.
  3012.  
  3013. FL - Function Level.  John Backus, ca. 1985.  Successor to FP.  Dynamically
  3014. typed.  Adds higher-order functions, exceptions, user-defined types, and
  3015. other features.  "FL Language Manual, Parts 1 & 2", J. Backus et al, IBM
  3016. Research Report RJ 7100 (1989).  (See FP, FFP).
  3017.  
  3018. FLAIR - Early system on IBM 650.  Listed in CACM 2(5):16 (May 1959).
  3019.  
  3020. FLAP - Symbolic math, for IBM 360.  "FLAP Programmer's Manual", A.H. Morris
  3021. Jr., TR-2558 (1971) U.S. Naval Weapons Lab.  Sammet 1969, p.506.
  3022.  
  3023. Flavors - D. Weinreb & D.A. Moon <moon@cambridge.apple.com> 1980.  LISP
  3024. with object-oriented features.  "Object-Oriented Programming with Flavors",
  3025. D.A. Moon, SIGPLAN Notices 21(11):1-8 (OOPSLA '86) (Nov 1986).
  3026.  
  3027. Fleng - Parallel logic language.  "Massively Parallel Implementation of
  3028. Flat GHC on the Connection Machine", M. Nilsson, Proc Intl Conf on 5th Gen
  3029. Comp Sys, 1988, pp.1031-1040.
  3030.  
  3031. FLEX - 
  3032.  
  3033.  
  3034. From billk@cs.ukans.edu Fri Feb  5 05:42:27 1993
  3035. Received: from mars.cs.ukans.edu by cogsci.Berkeley.EDU (5.63/1.29)
  3036.     id AA25988; Fri, 5 Feb 93 05:42:24 -0800
  3037. From: Bill Kinnersley <billk@cs.ukans.edu>
  3038. Date: Fri, 5 Feb 1993 07:40:38 CST
  3039. X-Mailer: Mail User's Shell (7.2.5 10/14/92)
  3040. To: muir@cogsci.Berkeley.EDU
  3041. Subject: Part 4
  3042. Message-Id:  <9302050740.aa07603@cs.ukans.edu>
  3043.  
  3044.   1. Faster LEX.  (Faster and free.)  "The FLEX Scanner Generator", Vern
  3045. Paxson <vern@ee.lbl.gov>, Real Time Systems, LBL, CA.  (See Lex).
  3046. ftp: comp.sources.unix/Volume23
  3047.      liege.ics.uci.edu:pub/irus/aflex-ayacc_1.2a.tar.Z with Ada output
  3048.  
  3049.   2. Real-time language for dynamic environments.  "FLEX: Towards Flexible
  3050. Real-Time Programs", K. Lin et al, Computer Langs 16(1):65-79 (Jan 1991).
  3051.  
  3052. Flex 2 - ca. 1980.  A preprocessor designed to make FORTRAN look more like
  3053. Pascal.  DECUS?
  3054.  
  3055. FLIC - Functional Language Intermediate Code.  Intermediate language used
  3056. in the Chalmers LML compiler.  "FLIC - A Functional Language Intermediate
  3057. Code", S. Peyton Jones<simonpj@cs.ucl.ac.uk> et al., RR 148, U Warwick, Sep
  3058. 1989.
  3059.  
  3060. FLIP - 
  3061.  
  3062.   1. Early assembly language on G-15.  Listed in CACM 2(5):16 (May 1959).
  3063.  
  3064.   2. "FLIP User's Manual", G. Kahn, TR 5, INRIA 1981.
  3065.  
  3066.   3. Formal LIst Processor.  Early language for pattern-matching on LISP
  3067. structures.  Similar to CONVERT.  "FLIP, A Format List Processor", W.
  3068. Teitelman, Memo MAC-M-263, MIT 1966.
  3069.  
  3070. FLIP-SPUR - Early system on IBM 1103 or 1103A.  Listed in CACM 2(5):16 (May
  3071. 1959).
  3072.  
  3073. F-Logic - "F-Logic: A Higher-Order Language for Reasoning about Objects,
  3074. Inheritance and Scheme", ACM SIGMOD May 1989, pp.134-146.
  3075.  
  3076. FLOP - Early system on IBM 701.  Listed in CACM 2(5):16 (May 1959).
  3077.  
  3078. FLOW-MATIC or FLOWMATIC - (originally B-0).  Remington Rand, 1958. 
  3079. Possibly the first English-like DP language.  For UNIVAC I.  Sammet 1969,
  3080. pp.316-324.
  3081.  
  3082. FLPL - FORTRAN List Processing Language.  H. Gelernter et al, ca 1960. 
  3083. Package of FORTRAN subroutines for handling lists.  Sammet 1969, p.388.
  3084.  
  3085. FMPL - Frobozz Magic Programming Language.  Experimental Computing
  3086. Facility, UC Berkeley.  A prototype-based object-oriented language with
  3087. functional features.  Event-driven.
  3088. ftp: xcf.berkeley.edu:src/local/fmpl
  3089. list: fmpl@xcf.berkeley.edu
  3090.  
  3091. FOCAL -
  3092.  
  3093.   1. FOrmula CALculator.  BASIC-style interpreter from DEC, designed 1969
  3094. for PDP-5/PDP-8's.  Versions: FOCAL-69, FOCAL-1971, FOCAL-11 (for PDP-11
  3095. under RT-11).
  3096.  
  3097.   2. Forty-One CAlculator Language.  Programming language of the HP-41
  3098. calculator line.
  3099.  
  3100. FOCUS - Hierarchical database language.  Information Builders Inc.
  3101.  
  3102. FOIL - File Oriented Interpretive Language.  CAI language.  "FOIL - A File
  3103. Oriented Interpretive Language", J.C. Hesselbart, Proc ACM 23rd National
  3104. Conf (1968).
  3105.  
  3106. foogol - Per Lindberg.  A tiny ALGOL-like language based on the VALGOL I
  3107. compiler, G.A. Edgar, DDJ May 1985.
  3108. ftp: comp.sources.unix/V8
  3109.     wuarchive.wustl.edu: /systems/amiga/fish/fish/ff066
  3110.  
  3111. FOOL - Fool's Lisp.  A small Scheme interpreter.
  3112. ftp: scam.berkeley.edu:src/local/fools.tar.Z
  3113.  
  3114. FOOP - OBJ2 plus object-orientation.  "Extensions and Foundations for
  3115. Object-Oriented Programming", J. Goguen et al, in Research Directions in
  3116. Object-Oriented Programming, B. Shriver et al eds, MIT Press 1987.
  3117.  
  3118. FORC - Early system on IBM 704.  Listed in CACM 2(5):16 (May 1959).
  3119.  
  3120. Force - dBASE dialect for MS-DOS.
  3121.  
  3122. The Force - Data parallel language.  "The Force", H. Jordan in The
  3123. Characteristics of Parallel Algorithms, L. Jamieson et al eds, MIT Press
  3124. 1987, pp.395-436.
  3125.  
  3126. ForceOne - Andrew K. Wright.  "Polymorphism in the Compiled Language
  3127. ForceOne", G.V. Cormack et al, Proc 20th Annual Hawaii Intl Conf on System
  3128. Sciences, 1987, pp.284-292.  "Design of the Programming Language ForceOne",
  3129. A.K. Wright, MS Thesis, U Waterloo 1987.
  3130.  
  3131. ForceTwo - Andrew K. Wright.  An unofficial successor to ForceOne.
  3132.  
  3133. FORM - Jos Vermaseren <t68@nikhefh.nikhef.nl> 1989.  Designed for speedy
  3134. handling of very large-scale symbolic math calculations.  A descendant of
  3135. Schoonschip.  Available for many PC's and workstations.
  3136. ftp: acm.princeton.edu, nikhefh.nikhef.nl
  3137. info: form@can.nl
  3138.  
  3139. FORMAC - FORmula MAnipulation Compiler.  J. Sammet & Tobey, IBM Boston APD,
  3140. 1962.  Extension of FORTRAN for symbolic math.  "Introduction to FORMAC",
  3141. J.E. Sammet et al, IEEE Trans Elec Comp (Aug 1964).  Versions: PL/I-FORMAC
  3142. and FORMAC73.  Sammet 1969, pp.474-491.
  3143.  
  3144. FORMAL -
  3145.  
  3146.   1. FORmula MAnipulation Language.  An early FORTRAN extension for
  3147. symbolic math.  "FORMAL, A Formula Manipulation Language", C.K. Mesztenyi,
  3148. Computer Note CN-1, CS Dept, U Maryland (Jan 1971).
  3149.  
  3150.   2. IBM LASC.  Data manipulation language for nonprogrammers.  "FORMAL: A
  3151. Forms-Oriented and Visual-Directed Application System", N.C. Shu, IEEE
  3152. Computer 18(8):38-49 (1985).
  3153.  
  3154. FORMAT-FORTRAN - FORTRAN Matrix Abstraction Technique FORTRAN. 
  3155. Manipulation, printing and plotting of large matrices.  "FORMAT-FORTRAN
  3156. Matrix Abstraction Technique (Vol. V)" AFFDL-TR-66-207, Douglas Aircraft Co
  3157. (Oct 1968).
  3158.  
  3159. Formes - Object-oriented language for music composition and synthesis,
  3160. written in VLISP.  "Formes: Composition and Scheduling of Processes", X.
  3161. Rodet & P. Cointe, Computer Music J 8(3):32-50 (Fall 1984).
  3162.  
  3163. Formula - 
  3164.  
  3165.   1. FORTH Music Language.  An extension of FORTH with concurrent note-
  3166. playing processes.  "Formula: A Programming Language for Expressive
  3167. Computer Music", D.P. Anderson et al Computer 24(7):12 (Jul 1991).  For Mac
  3168. and Atari ST, with MIDI output.
  3169.  
  3170.   2. Preprocessor language for the Acorn Archimedes, allowing inline high-
  3171. level statements to be entered in an assembly program.  Written in nawk.
  3172.  
  3173. Formula ALGOL - ALGOL extension for symolic math, strings and lists. 
  3174. Carnegie, CDC G-20, 1962.  A.J. Perlis & R. Iturriaga.  Sammet 1969, p.583. 
  3175. "An Extension of ALGOL for Manipulating Formulae", A.J. Perlis et al, CACM
  3176. 7(2):127-130 (Feb 1964).
  3177.  
  3178. Forsythe - An ALGOL-like language.  "Preliminary Design of the Programming
  3179. Language Forsythe", J.C. Reynolds, CMU-CS-88-159, 1988.
  3180. ftp: e.ergo.cs.cmu.edu
  3181.  
  3182. FORTH - Fourth.  Charles H. Moore, 1960's.  An interactive extensible
  3183. language using postfix syntax and a data stack.  A program is a set of
  3184. recursive functions ("words") which are compiled by an outer interpreter
  3185. into bytecodes.  FORTH is small and efficient, but programs can be
  3186. difficult to read.  Used first to guide the telescope at NRAO, Kitt Peak. 
  3187. Versions include FORTH 79 and FORTH 83.  FORTH Interest Group, Box 1105,
  3188. San Carlos CA 94070.
  3189.  
  3190. FORTRAN - FORmula TRANslator.  The first and still the most widely used
  3191. language for numerical calculations.  Nonrecursive, efficient.
  3192.  
  3193. FORTRAN I - John Backus, IBM for the IBM 704.  Design begun 1954, compiler
  3194. released April 1957.
  3195.  
  3196. FORTRAN II - 1958.  Added subroutines.
  3197.  
  3198. FORTRAN III - This was only distributed to ca. 20 sites.  See Wexelblat.
  3199.  
  3200. FORTRAN IV - IBM 1962.  For the IBM 7090/94.  Many implementations went
  3201. well beyond the original definition.
  3202.  
  3203. FORTRAN V - Preliminary work on adding character handling facilities by IBM
  3204. ca. 1962.  This name never really used.
  3205.  
  3206. FORTRAN VI - Internal IBM name for early PL/I work ca. 1963.  Sammet 1969,
  3207. p.540.
  3208.  
  3209. FORTRAN 66 - FORTRAN IV standardized.  ASA X3.9-1966.
  3210.  
  3211. FORTRAN 77 - Block IF, PARAMETER, SAVE statements added, still no WHILE. 
  3212. Fixed-length character strings, format-free I/O, arrays with lower bounds. 
  3213. ANSI X3.9-1978.
  3214. ftp: ux1.cso.uiuc.edu:amiga/fish/ff470/BCF for Amiga
  3215.  
  3216. Fortran 90 - Previously Fortran 8x and Fortran Extended.  An extensive
  3217. enlargement of FORTRAN 77.  Derived types, assumed shape arrays, array
  3218. sections, functions returning arrays, case statement, module subprograms
  3219. and internal subprograms, optional and keyword subprogram arguments,
  3220. recursion, and dynamic allocation.  ISO 1539:1991, soon to be adopted by
  3221. ANSI.  "Fortran 90 Explained", M. Metcalf et al, Oxford University Press
  3222. 1990.
  3223.  
  3224. Fortran D - Ken Kennedy, Rice U.  A data-parallel Fortran.  TR 90-141, Rice
  3225. U.
  3226.  
  3227. Fortran-Linda - Scientific Computer Assocs <linda@sca.com>.
  3228.  
  3229. FORTRAN-Plus - FORTRAN for the DAP parallel machine, implements many
  3230. Fortran 90 features.
  3231.  
  3232. FORTRANSIT - FORTRAN Internal Translator.  Subset of FORTRAN translated
  3233. into IT on the IBM 650.  Sammet 1969, p.141.
  3234.  
  3235. FORTRUNCIBLE - A cross between FORTRAN and RUNCIBLE for the IBM 650. 
  3236. Listed in CACM 2(5):16 (May 1959).
  3237.  
  3238. FOSIL - Fredette's Operating System Interface Language.  A portable job
  3239. control language, for IBM OS360, UNIVAC EXEC 8 and Honeywell GCOS. 
  3240. "Fredette's Operating System Interface Language (FOSIL)", G.N. Baird in
  3241. Command Languages, C. Unger ed, N-H 1973.
  3242.  
  3243. FoxBASE+ - dBASE III+-like product from Fox Software, Perrysburg, OH.
  3244.  
  3245. FoxPRO - dBASE IV-like product from Fox Software, Perrysburg, OH.
  3246.  
  3247. FP - Functional Programming.  Backus.  Combinator based.  "Can Programming
  3248. be Liberated From the von Neumann Style?  A Functional Style and Its
  3249. Algebra of Programs", John Backus, 1977 Turing Award Lecture, CACM
  3250. 21(8):165-180 (Aug 1978).  (See FFP, FL, IFP).
  3251. ftp: apple.com:ArchiveVol1/unix_lang
  3252. Berkeley FP - distributed with 4.2BSD
  3253. ftp: comp.sources.unix/Volume20: fpc translates FP programs to C.
  3254.     comp.sources.unix/volume13: FP by Andy Valencia
  3255.  
  3256. FP2 - Functional Parallel Programming.  Term rewrite rules used to specify
  3257. algebraic data types and parallel processes.  "Term Rewriting as a Basis
  3258. for the Design of a Functional and Parallel Programming Language.  A Case
  3259. Study: The Language FP2", Ph. Jorrand in Fundamentals of Artificial
  3260. Intelligence, LNCS 258, Springer 1986, pp.221-276.
  3261.  
  3262. FP/M - An intermediate language for functional languages, used to implement
  3263. Hope.  "The Compilation of FP/M Programs into Conventional Machine Code",
  3264. A.J. Field, Imperial College, London, 1985.  "Functional Programming", A.J.
  3265. Field & M.C. Harrison, A-W 1988.
  3266.  
  3267. FQL - Functional database language.  "An Implementation Technique for
  3268. Database Query Languages", O.P. Buneman et al, ACM Trans Database Sys
  3269. 7(2):164-186 (June 1982).
  3270.  
  3271. FrameKit - Frame language.  "The FrameKit User's Guide", E. Nyberg, TR CMU-
  3272. CMT-88-MEMO, CMU 1988.
  3273.  
  3274. FRANK - "Using BINS for Interprocess Communication", P.C.J. Graham, SIGPLAN
  3275. Notices 20(2):32-41 (Feb 1985).
  3276.  
  3277. Franz Lisp - (named for the Hungarian composer Franz Liszt (1811-1886)) R.
  3278. Fateman et al, UC Berkeley ca 1980.  A subdialect of MACLISP.  "The FRANZ
  3279. LISP Manual", J.K. Foderaro et al. UC Berkeley 1980.  Version: Opus 38.22. 
  3280. Liszt (the compiler) Version 8.08.
  3281. ftp: ted.cs.uidaho.edu:pub/hol/franz.tar.Z
  3282.  
  3283. FRED - Robert Carr.  Language used by Framework, Ashton-Tate.
  3284.  
  3285. Fresh - "Fresh: A Higher-Order Language Based on Unification", G. Smolka,
  3286. in Logic Programming: Functions, Relations and Equations", D. DeGroot et
  3287. al, P-H 1986, pp.469-524.
  3288.  
  3289. FRINGE - C. Katz, GE, 1961.  Subcomponent of GE-255 GECOM system.  Sorting
  3290. and merging of data, reports and file maintenance.
  3291.  
  3292. FRL - Frame Representation Language.  MIT.  "The FRL Manual", R. Roberts et
  3293. al, AI Memo 409, MIT AI Lab, 1977.
  3294.  
  3295. FRMT-FTRN - Scientific language, listed [?] 1976.
  3296.  
  3297. FSL - Formal Semantics Language.  Language for compiler writing.  "A Formal
  3298. Semantics for Computer Languages and its Application in a Compiler-
  3299. Compiler", J.A. Feldman, CACM 9(1) (Jan 1966).  Sammet 1969, p.641.
  3300.  
  3301. Fugue - Music language, implemented in Xlisp.  "Fugue: A Functional
  3302. Language for Sound Synthesis", R.B. Dannenberg et al, Computer 24(7):36-41
  3303. (Jul 1991).
  3304.  
  3305. Fun - A typed lambda-calculus, similar to SOL[2].  "On Understanding Types,
  3306. Data Abstractions and Polymorphism", L. Cardelli et al, ACM Comp Surveys
  3307. 17(4) (Dec 1985).
  3308.  
  3309. FUNLOG - Functional programming plus unification.  "Lazy" in the sense that
  3310. expressions are reduced only if they are not unifiable.  "FUNLOG: A
  3311. Computational Model Integrating Logic Programming and Functional
  3312. Programming", P.A. Subrahmanyam et al, in Logic Programming: Functions,
  3313. Relations and Equations, D. DeGroot et al eds, P-H 1986.
  3314.  
  3315. FX-87 - Effects.  A polymorphic language based on Scheme, allowing side
  3316. effects and first-class functions.  Attempts to integrate functional and
  3317. imperative programming.  Expressions have types, side effects (e.g.
  3318. reading, writing or allocating) and regions (stating where the effects may
  3319. occur).  "The FX-87 Reference Manual", D.K. Gifford <gifford@lcs.mit.edu>
  3320. et al, MIT/LCS/TR-407, Oct 1987.  Version: FX-89.
  3321. ftp: brokaw.lcs.mit.edu
  3322.  
  3323. FX-90 - Partial type and effect reconstruction and first-class modules.
  3324.  
  3325. G - 
  3326.  
  3327.   1. "G: A Functional Language with Generic Abstract Data Types", P.A.G.
  3328. Bailes, Computer Langs 12(2):69-94 (1987).
  3329.  
  3330.   2. Oregon State U 1988.  Combines functional, object-oriented,
  3331. relational, imperative and logic programming (you name it we got it).  "The
  3332. Multiparadigm Language G", J. Placer, Computer Langs 16:235-258(1991).
  3333.  
  3334. G++ - GNU's implementation of C++.
  3335. ftp: prep.ai.mit.edu:/pub/gnu/g++-1.39.0.tar.Z for Unix
  3336.  
  3337. Gabriel - Graphical DSP language for simulation and real systems.  "A
  3338. Design Tool for Hardware and Software for Multiprocessor DSP Systems," E.A.
  3339. Lee, E. Goei, J. Bier & S. Bhattacharyya, DSP Systems, Proc ISCAS-89, 1989.
  3340.  
  3341. GADS - Picture retrieval language.  "Integrated Geographical Databases: The
  3342. GADS Experience", P.E. Mantey et al, in Database Techniques for Pictorial
  3343. Applications, A. Blaser ed, pp.193-198.
  3344.  
  3345. Gaelic - For automated test programs.  Used in military, essentially
  3346. replaced by ATLAS.
  3347.  
  3348. Galaxy - An extensible language in the vein of EL/1 and RCC.  "Introduction
  3349. to the Galaxy Language", Anne F. Beetem et al, IEEE Software 6(3):55-62.
  3350.  
  3351. Galileo - "Galileo: A Strongly Typed Interactive Conceptual Language", A.
  3352. Albano et al, ACM Trans Database Sys 10(2):230-260 (June 1985).
  3353.  
  3354. Gambit - A variant of Scheme R3.99 supporting the 'future' construct of
  3355. Multilisp.  Implementation includes a compiler portable across 680x0
  3356. systems.  Version: 1.7.1.
  3357. ftp:acorn.cs.brandeis.edu:/dist
  3358.  
  3359. GAMMA - 
  3360.  
  3361.   1. language for matrices and generation of mathematical programming
  3362. reports.  "GAMMA 3.3 for MPS/MPSX, IBM System:/360", Bonnor & Moore Assocs
  3363. (Mar 1975).
  3364.  
  3365.   2. A high-level parallel language.  Research Directions in High-Level
  3366. Parallel Languages, LeMetayer ed, Springer 1992.
  3367.  
  3368. GAN - Generating and Analyzing Networks.  "GAN - A System for Generating
  3369. and Analyzing Acivity Networks", A. Schurmann, CACM 11(10) (Oct 1968).
  3370.  
  3371. GAP - Groups Algorithms and Programming.  Johannes Meier, Alice Niemeyer,
  3372. Werner Nickel, Martin Schonert, Aachen 1988.  Symbolic math for
  3373. computational group theory.
  3374. ftp: math.ucla.edu, version for Sun.
  3375.  
  3376. GAPLog - General Amalgamated Programming with Logic.  LOGPRO group,
  3377. Linkoping Sweden.  Restricted version of constraint loic programming, using
  3378. S-unification but not restricted to a single domain.  [Chapter in
  3379. forthcoming Springer book on ESPRIT]
  3380.  
  3381. Gargoyle - For compiler writing.  J.V. Garwick, CACM 7(1):16-20, (Jan
  3382. 1964).
  3383.  
  3384. GARP - Graphical language for concurrent programming.  "Visual Concurrent
  3385. Programmint in GARP", S.K. Goering er al, PARLE '89 v.II, LNCS 366, pp.165-
  3386. 180.
  3387.  
  3388. GASP - Graph Algorithm and Software Package.  PL/I extension for
  3389. programming graph algorithms.  "GASP - Gprah Algorithm Software Package",
  3390. S. CHase, TR CS Dept, U Illinois, Dec 1969.
  3391.  
  3392. GAT - Generalized Algebraic Translator.  Improved version of IT.  On IBM
  3393. 650 RAMAC.  Sammet 1969, p.142.
  3394.  
  3395. GATE - GAT Extended?  Based on IT.  Sammet 1969, p.139.
  3396.  
  3397. GAWK - GNU's implementation of AWK.
  3398. ftp: prep.ai.mit.edu:pub/gnu/gawk-2.13.tar.Z
  3399.      archive.umich.edu:mac/utilities/developerhelps/macgawk2.11.cpt.hqx
  3400.  
  3401. GCL - General Control Language.  A portable job control language.  "A
  3402. General Control Interface for Satellite Systems", R.J. Dakin in Command
  3403. Languages, C. Unger ed, N-H 1973.
  3404.  
  3405. G-Code - 
  3406.  
  3407.   1. Johnsson & Augustsson, Chalmers Inst Tech.  Intermediate language used
  3408. by the G-machine, an implementation of graph reduction based on
  3409. supercombinators.  "Efficient Compilation of Lazy Evaluation", T. Johnsson,
  3410. SIGPLAN Notices 19(6):58-69 (June 1984).
  3411.  
  3412.   2. A machine-like language for the representation and interpretation of
  3413. attributed grammars.  Used as an intermediate language by the Coco compiler
  3414. generator.  "A Compiler Generator for Microcomputers", P. Rechenberg et al,
  3415. P-H 1989.
  3416.  
  3417. GDPL - Generalized Distributed Programming Language.  "GDPL - A Generalized
  3418. Distributed Programming Language", K. Ng et al, Proc 4th Intl Conf Distrib
  3419. Comp Sys, IEEE 1984, pp.69-78.
  3420.  
  3421. GEA - Graph Extended ALGOL.  Extension of ALGOL-60 for graph manipulation,
  3422. on UNIVAC 1108.  "A Language for Treating Graphs", S. Crespi-Reghizzi et
  3423. al, , CACM 13(5) (May 1970).
  3424.  
  3425. GECOM - For the GE-255.  Somewhat akin to COBOL with some ALGOL features
  3426. added.  Comprised of ALGOL, COBOL, FRINGE and TABSOL.  FRINGE and TABSOL
  3427. may not have actually been implemented.  Sammet 1969, p.329.
  3428.  
  3429. Gedanken - John Reynolds, 1970.  "GEDANKEN - A Simple Typeless Language
  3430. Based on the Principle of Completeness and the Reference Concept", J.C.
  3431. Reynolds, CACM 13(5):308-319 (May 1970).
  3432.  
  3433. General Purpose Graphic Language - "A General Purpose Graphic Language",
  3434. H.E. Kulsrud, CACM 11(4) (Apr 1968).
  3435.  
  3436. Gentleman's Portable Coroutine System - Coroutine package in FORTRAN.  "A
  3437. Portable Coroutine System", W.M. Gentleman, Info Proc 71, C.V. Freiman ed,
  3438. 1972.
  3439.  
  3440. GEPURS - Early system on IBM 701.  Listed in CACM 2(5):16 (May 1959).
  3441.  
  3442. Gerald - "Gerald: An Exceptional Lazy Functional Programming Language",
  3443. A.C. Reeves et al, in Functional Programming, Glasgow 1989, K. Davis et al
  3444. eds, Springer 1990.
  3445.  
  3446. GHC - Guarded Horn Clauses.  K. Ueda.  Parallel logic language similar to
  3447. Parlog.  Guards and commited-choice nondeterminism.  (See FGHC, KL1).
  3448.  
  3449. GIM-1 - Generalized Information Management Language.  Nelson, Pick,
  3450. Andrews.  Proc SJCC 29:169-73, AFIPS (Fall 1966).
  3451.  
  3452. GIN - Special-purpose macro assembler used to build the GEORGE 3 operating
  3453. system for ICL1900 series machines.
  3454.  
  3455. GIRL - Graph Information Retrieval Language.  Handling directed graphs. 
  3456. "Graph Information Retrieval Language", S. Berkowitz, Report 76-0085, Naval
  3457. Ship Res Dev Center, (Feb 1976).
  3458.  
  3459. GKS - Graphical Kernel System.
  3460.  
  3461. Glammar - A pattern transformation language for text-to-text translation,
  3462. Used for compiler writing and linguistics.
  3463. ftp: phoibos.cs.kun.nl:pub/GLASS/glammar.tar.Z
  3464.  
  3465. GLASS - General LAnguage for System Semantics.  Esprit project at KU
  3466. Nijmegen.
  3467. ftp: phoibos.cs.kun.nl:pub/GLASS
  3468.  
  3469. Glisp - Generalized LISP.  D.C. Smith, Aug 1990.  A coordinated set of
  3470. high-level syntaxes for Common LISP.  Contains Mlisp, Plisp and ordinary
  3471. LISP, with an extensible framework for adding others.  Written in Plisp.
  3472. ftp: bric-a-brac.apple.com:dts/mac/lisp
  3473.  
  3474. GLOS - Graphics Language Object System.  Dan Johnston dan@cs.uq.oz.au> and
  3475. Brian Hicks <cs.uq.oz.au>, U Queensland, St. Lucia 1978.  Graphics objects
  3476. correspond to language statements (e.g. line, circle, polygon etc).  New
  3477. objects defined using procedures.  2-D Transformations are context
  3478. dependent and may be nested.
  3479.  
  3480. GLOW - A POP-11 variant with lexical scope.  Reviewed in Byte's UK edition,
  3481. May 1992.  Available from Andrew Arnblaster, Bollostraat 6, B-3140
  3482. Keerbergen, Belgium, for Mac or MS-DOS.
  3483.  
  3484. Glypnir - 1966.  An ALGOL-like language with parallel extensions.  Similar
  3485. to Actus.  "GLYPNIR - A Programming Language for the Illiac IV", D.H.
  3486. Lawrie et al, CACM 18(3) (Mar 1975).
  3487.  
  3488. GMAP - GCOS Macro Assembler Program - Macro assembler for the GCOS 8
  3489. operating system on Honeywell/Bull DPS-8 machines.  "GCOS8 OS GMAP User's
  3490. Guide", Bull.
  3491.  
  3492. Goedel - Declarative language for AI, based on many-sorted logic.  Strongly
  3493. typed, polymorphic, declarative, with a module system.  Supports bignums
  3494. and sets.  Partial implementation available on SISCtus Prolog.
  3495. ftp: ftp.cs.bris.ac.uk:/goedel
  3496. info: goedel@compsci.bristol.ac.uk
  3497.  
  3498. Gofer - Mark Jones <mpj@prg.ox.ac.uk>, Oxford 1991.  An interpreted
  3499. language similar to Haskell 1.1.  Lazy evaluation, higher order functions,
  3500. pattern matching, and type classes.  Lambda, case, conditional and let
  3501. expressions, and wildcard, as and irrefutable patterns.  Lacks modules,
  3502. arrays, standard classes.  "Introduction to Gofer 2.20", M.P. Jones.
  3503. ftp: nebula.cs.yale.edu:ftp/pub/glasgow
  3504.  
  3505. GOL - General Operating Language.  Subsystem of DOCUS.  Sammet 1969, p.678.
  3506.  
  3507. GOM - Good Old MAD.  Don Boettner, U Mich.  MAD for the IBM 360.  Parts of
  3508. the MTS Time-sharing system were written in GOM.
  3509.  
  3510. GOOD - Graph-Oriented Object Database.  A graph manipulation language for
  3511. use as a database query language.  "A Graph-Oriented Object Database
  3512. Model", M. Gyssens et al, Proc ACM Symp Princs of Database Sys, Mar 1990.
  3513.  
  3514. GOSPL - Graphics-Oriented Signal Processing Language.  A graphical DSP
  3515. language for simulation.  "Graphic Oriented Signal Processing Language -
  3516. GOSPL", C.D. Covington et al, Proc ICASSP-87, 1987.
  3517.  
  3518. GP - Early system on UNIVAC I or II.  Listed in CACM 2(5):16 (May 1959).
  3519.  
  3520. GPL - 
  3521.  
  3522.   1. Generalized Programming Language.  General purpose language akin to
  3523. ALGOL.  Sammet 1969, p.195.
  3524.  
  3525.   2. "A Sample Management Application Program in a Graphical Data-driven
  3526. Programming language", A.L. Davis et al, Digest of Papers, Compcon Spring
  3527. 81, Feb 1981, pp.162-167.
  3528.  
  3529. GPM - General Purpose Macro-generator.  Early text-processing language
  3530. similar to TRAC, implemented on Atlas 2.  "A General Purpose
  3531. Macrogenerator", C. Strachey, Computer J 8(3):225-241 (Oct 1965).
  3532.  
  3533. GPSS - General Purpose Systems Simulator.  Geoffrey Gordon, 1960.  Discrete
  3534. simulations.  "The Application of GPSS V to Discrete System Simulation", G.
  3535. Gordon, P-H 1975.  Versions include GPSS II (1963), GPSS III (1965),
  3536. GPS/360 (1967), and GPSS V (1970).
  3537.  
  3538. GPX - Early system on UNIVAC II.  Listed in CACM 2(5):16 (May 1959).
  3539.  
  3540. GRAAL - ("Grail")  General Recursive Applicative and Algorithmic Language. 
  3541. FP with polyadic combinators.  "Graal: A Functional Programming System with
  3542. Uncurryfied Combinators and its Reduction Machine", P. Bellot in ESOP 86,
  3543. G. Goos ed, LNCS 213, Springer 1986.
  3544.  
  3545. GRAF - GRaphic Additions to FORTRAN.  FORTRAN plus graphic data types. 
  3546. "GRAF: Graphic Additions to FORTRAN", A. Hurwitz et al, Proc SJCC 30
  3547. (1967).  Sammet 1969, p.674.
  3548.  
  3549. GRAIL - Graphical Input Language.  Flowchart language entered on a grphics
  3550. tablet.  "The GRAIL Language and Operations", T.O. Ellis et al, RM-6001-
  3551. ARPA, RAND, Sept 1969.
  3552.  
  3553. GRAIN - Pictorial query language.  "Pictorial Information Systems", S.K.
  3554. Chang et al eds, Springer 1980.
  3555.  
  3556. GRAM - An extension of BNF used by the SIS compiler generator.  "SIS -
  3557. Semantics Implementation System", P.D. Mosses, TR DAIMI MD-30, Aarhus U,
  3558. Denmark.
  3559.  
  3560. Graphic ALGOL - Generation of shaded perspective picures in real time.
  3561. "An Extended ALGOL-60 for Shaded Computer Graphics", B. Jones, Proc ACM
  3562. Symp on Graphic Languages, Apr 1976.
  3563.  
  3564. Graphic Language - For specifying graphic operations.  "A Problem Oriented
  3565. Graphic Language", P.J. Schwinn, proc ACM 22nd Natl Conf, 1967.  Sammet
  3566. 1969, p.677.
  3567.  
  3568. GRAPPLE - GRAPh Processing LanguagE.  1968.  "A Directed Graph
  3569. Representation for Computer Simulation of Belief Systems", L.G. Tesler et
  3570. al, Math Biosciences 2:19-40 (1968).
  3571.  
  3572. GREEN - A proposed language to meet the DoD Ironman requirements which led
  3573. to Ada.  This language was the winner.  "On the GREEN Language Submitted to
  3574. the DoD", E.W. Dijkstra, SIGPLAN Notices 13(10):16-21 (Oct 1978).
  3575.  
  3576. GRIND - GRaphical INterpretive Display.  Graphical input language for PDP-
  3577. 9.  "GRIND: A Language and Translator for COmputer Graphics", A.P. Conn,
  3578. Dartmouth, June 1969.
  3579.  
  3580. Groff - GNU's implementation of roff.  (See nroff, troff).
  3581.  
  3582. GSBL - "GSBL: An Algebraic Specification Language Based on Inheritance", S.
  3583. Clerici et al in in ECOOP '88, S. Gjessing et al eds, LNCS 322, Springer
  3584. 1988, pp.78-92.
  3585.  
  3586. GSPL - Greenberg's System Programming Language.  Bernard Greenberg.
  3587.  
  3588. GVL - Graphical View Language.  T.C.N. Graham & J.R. Cordy, Queen's U.
  3589. Canada.  A visual language for specifying interactive graphical output. 
  3590. "GVL: A Graphical, Functional Language for the Specification of Output in
  3591. Programming Languages", J.R. Cordy & T.C.N. Graham, Proc IEEE Intl Conf on
  3592. Comp Lang ICCL'90 (March 1990).
  3593.  
  3594. GW-BASIC - "Gee Whiz" BASIC.  Microsoft's BASIC with graphic extensions.
  3595.  
  3596. Gypsy - Specification and verification of concurrent systems software. 
  3597. Message passing using named mailboxes.  Separately compilable units:
  3598. routine (procedure, function, or process), type and constant definition,
  3599. each with a list of access rights. "Report on the Language Gypsy", A.L.
  3600. Ambler et al, UT Austin ICSCS-CMP-1 Aug 1976.
  3601.  
  3602. HAL/S - Real-time language used by NASA for onboard shuttle software. 
  3603. "Two-Dimensional Characteristics of HAL, A Language for Spaceflight
  3604. Applications", J.S. Miller, SIGPLAN Notices 7(10) (Oct 1972).
  3605.  
  3606. HALGOL - Hewlett-Packard.  A simple language for communicating with devices
  3607. such as modems and X.25 PADs.
  3608.  
  3609. HALMAT - Intermediate language used by HAL/S.
  3610.  
  3611. Haskell - (named for the logician Haskell B. Curry).  April 1990.  Designed
  3612. by a committee from the functional programming community.  A lazy purely
  3613. functional language largely derived from Miranda.  Static polymorphic
  3614. typing, higher-order functions, user-defined algebraic data types, and
  3615. pattern-matching list comprehensions.  Innovations include a class system,
  3616. operator overloading, functional I/O system, functional arrays, and
  3617. separate compilation.   "Report on the Programming Language Haskell Version
  3618. 1.1", Paul Hudak & P. Wadler eds, CS Depts, U Glasgow and Yale U. (Aug
  3619. 1991).  Version 1.2: SIGPLAN Notices 27(5) (Apr 1992).
  3620. list: haskell-request@cs.yale.edu, HASKLD-L@YALEVM.BITNET.
  3621.   Yale Haskell - beta 2.0, a full Haskell 1.2 system built on Common Lisp.
  3622.     ftp:nebula.cs.yale.edu:pub/haskell/yale
  3623.     info: haskell-request@cs.yale.edu
  3624.   Glasgow Haskell - Version 0.10 for Sun4's
  3625.     ftp: ftp.dcs.glasgow.ac.uk:pub/haskell/glasgow/ghc*
  3626.     info: glasgow-haskell-request@dcs.glasgow.ac.uk
  3627.   Haskell B. - Haskell 1.2 implemented in LML, for Sun 3's and 4's,        
  3628.     DECstation 3100 and Sequent Symmetry.
  3629.     ftp: animal.cs.chalmers.se:pub/haskell/chalmers/hbc*
  3630.     info: hbc@cs.chalmers.se
  3631.  
  3632. HASL - SASL plus conditional unification.  "A Prological Definition of
  3633. HASL, A Purely Functional Language with Unification Based Conditional
  3634. Binding Expressions", H. Abramson in Logic Programming: Functions,
  3635. Relations and Equations, D. DeGroot et al eds, P-H 1986.
  3636.  
  3637. HCLP - Hierarchical CLP.  "Constraint Hierarchies and Logic Programming",
  3638. A. Borning et al, in Proc Sixth Intl Logic Prog Conf, June 1989, pp. 149-
  3639. 164.
  3640.  
  3641. HCPRVR - "HCPRVR: An Interpreter for Logic Programs", D. Chester in Proc
  3642. First Natl Conf on AI, Stanford, 1980.
  3643.  
  3644. HDFL - Single assignment language.  "Methods for Handling Structures in
  3645. Data-Flow Systems", J.L. Gaudiot, Proc 12th Intl Symp Comp Arch, June 1985.
  3646.  
  3647. HDM - See SPECIAL.
  3648.  
  3649. HELP - DEA.  Language for industrial robots.
  3650.  
  3651. HEQS - E. Derman.  Constraint language for financial modeling.  Uses an
  3652. extension of the equation solver in IDEAL.  "A Simple Equation Solver and
  3653. Its Application to Financial Modeling", E. Derman et al, Soft Prac & Exp
  3654. 14(12):1169-1181 (Dec 1984).
  3655.  
  3656. HERAKLIT - A distributed object-oriented language.  "Definition einer
  3657. objektorientierten Programmiersprache mit hierarchischem Typkonzept", B.
  3658. Hindel, diss U Erlangen-Nuernberg, Dec 1987.
  3659.  
  3660. Hermes - IBM, June 1990.  An imperative, strongly typed process-oriented
  3661. language for complex distributed systems.  A follow-on effort to NIL[2]. 
  3662. Threads, relational tables, typestate checking, capability-based access,
  3663. dynamic configuration.  "Hermes: A Language for Distributed Computing", R.
  3664. Strom et al, P-H 1991, ISBN 0-13-389537-8.
  3665. ftp: software.watson.ibm.com:pub/hermes 0.7alpha for Unix
  3666. info: hermes-request@watson.ibm.com
  3667.  
  3668. HIBOL - A variant of DIBOL, used in Infotec computers.
  3669.  
  3670. HiLog - W. Chen et al, Stony Brook, 1989.  Logic programming in higher
  3671. order logic.  "HiLog as a Platform for Database Languages (Or Why Predicate
  3672. Calculus is Not Enough)", W. Chen et al, 2nd Intl Workshop on Database Prog
  3673. Langs, Morgan Kaufmann, 1989.
  3674. ftp: sbcs.sunysb.edu:SB-hilog
  3675.  
  3676. HINT - Hierarchical Information NeTs.  For CDC 3600.  "HINT: A Graph
  3677. Processing Language", R.D. Hart, Michigan State U, Apr 1970.
  3678.  
  3679. HLISP - "Monocopy and Associative Algorithms in an Extended Lisp", E. Goto,
  3680. U Tokyo May 1974.
  3681.  
  3682. HOL - Higher Order Logic.  A proof-generating system for higher order logic
  3683. based on LCF.  "HOL: A Machine Oriented Formulation of Higher Order Logic",
  3684. M.J.C. Gordon, Report 68, Comp Lab U Cambridge (1985).  "Introduction to
  3685. HOL", M.J.C. Gordon et al, Cambridge U Press 1993 ISBN 0-521-441897
  3686. HOL-88 built on ML, from Mike Gordon <mjcg@cl.cam.ac.uk>
  3687. ftp: ted.cs.uidaho.edu:pub/hol
  3688. list: info-hol@ted.cs.uidaho.edu
  3689. HOL-90 built on SML/NJ, from Brian Graham <graham@cpsc.ucalgary.ca>
  3690. ftp: fsa.cpsc.ucalgary.ca:pub/hol90.tar.Z for Sun 4
  3691. list: info-hol@clover.ucdavis.edu
  3692.  
  3693. Honeywell-800 Business Compiler - Another name for FACT.  Sammet 1969,
  3694. p.327.
  3695.  
  3696. HOOK - ? Object Oriented Kernel.  Delphia.  An object-oriented extension of
  3697. Delphia Prolog.
  3698.  
  3699. Hope - ("springs eternal" and so forth.)  R.M. Burstall, U Edinburgh 1978. 
  3700. Functional language with polymorphic types and lazy lists.  First language
  3701. to use call-by-pattern.  "HOPE, an Experimental Applicative Language", R.M.
  3702. Burstall et al, Conf Record 1980 LISP Conf, p.136-143 (Aug 1980), "A HOPE
  3703. Tutorial", R. Bailey, BYTE Aug 1985, pp.235-258.  "Functional Programming
  3704. with Hope", R. Bailey, Ellis Horwood 1990.
  3705. ftp: brolga.cc.uq.oz.au:pub/hope.  PC Hope, plus a lazy variant for Unix,
  3706. Mac
  3707.  
  3708. Hope+ - Alvey Flagship project, Imperial College.  An extension of Hope
  3709. with real numbers, vectors, call-by-WHNF.  "Hope+", N. Perry, Imperial
  3710. College, IC/FPR/LANG/2.5.1/7, 1988.
  3711.  
  3712. Hope+C - Alvey Flagship project, Imperial College.  Further evolution of
  3713. Hope+ with continuation-based I/O, coroutines, and RFC's.  For Sun-3's with
  3714. Motorola FPU's.  (See Massey Hope).
  3715. info: John Darlington <jd@dic.ic.ac.uk>
  3716.  
  3717. HOS-STPL - Hospital Operating System - STructured Programming Language.  A
  3718. FORTRAN-like language with structured extensions.  "HOS-STPL User Manual",
  3719. Health Services Research, US Public Health Service (Jan 1975).
  3720.  
  3721. HPcode - Stack-based intermediate language used by HP in many of its
  3722. compilers for RISC and stack-based architectures.  Supports Fortran, Ada,
  3723. Pascal, COBOL and C++.  Descended from Stanford's U-code.
  3724.  
  3725. HPCode-Plus - Descendant of HPcode with data types, developed to be an ANDF
  3726. language.  "ANDF: Finally an UNCOL After 30 Years", M.E. Benitez, Jack
  3727. Davidson <jwd@virginaia.edu> et al, CS TR-91-05 U Virginia (Mar 1991). 
  3728. (See ANDF).
  3729.  
  3730. HP-GL - Hewlett-Packard Graphics Language.  Vector graphics language used
  3731. by HP plotters.
  3732.  
  3733. HP-GL/2 - "HP-GL/2 Programmer's Guide", No. 5959-9733, HP.  (See PCL.)
  3734.  
  3735. HPL - Language used in HP9825A/S/T "Desktop Calculators", 1978(?) and
  3736. ported to the early Series 200 family (9826 and 9836, MC68000).  Fairly
  3737. simple and standard, but with extensive I/O support for data acquisition
  3738. and control (BCD, Serial, 16 bit custom and IEEE-488 interfaces), including
  3739. interrupt handling.  Currently owned by Structured Software Systems.  "HPL
  3740. Operating Manual for Series 200, Models 216, 226 and 235\6", HP 98614-
  3741. 90010, Jan 1984.
  3742.  
  3743. HSL-FX - Hierarchical Specification Language - Function Extension.
  3744.  
  3745. HUGO - Geac.  A bytecode-interpreted transaction handler.
  3746.  
  3747. Hybrid - Concurrent object-oriented language.  "Active Objects in Hybrid",
  3748. O.M. Nierstrasz, SIGPLAN Notices 22(12):243-253 (OOPSLA '87) (Dec 1987).
  3749.  
  3750. Hyperscript - Informix.  The object-based programming language for Wingz,
  3751. used for creating charts, graphs, graphics, and customized data entry.
  3752.  
  3753. HyperTalk - The programming language for Macintosh HyperCard.
  3754.  
  3755. HyTime - A hypermedia extension of SGML.  "The HyTime Hypermedia/Time-based
  3756. Document Structuring Language", S. Newcomb et al, CACM 34(11):67-83 (Nov
  3757. 1991).
  3758.  
  3759. IAL - International Algebraic Language.  Original name of ALGOL 58.
  3760. "Preliminary report - International Algebraic Language", CACM 1(12):8
  3761. (1958).
  3762.  
  3763. IAM - Interactive Algebraic Manipulation.  Interactive symbolic math for
  3764. PDP-10.  "IAM, A System for Interactive Algebraic Manipulation", C.
  3765. Christensen et al, Proc Second Symp Symb Alg Manip, ACM Mar 1971.
  3766.  
  3767. IBEX - Command language for Honeywell's CP-6 OS.
  3768.  
  3769. ICES - Integrated Civil Engineering System.  Subsystems include COGO,
  3770. STRUDL, BRIDGE, LEASE, PROJECT, ROADS and TRANSET.  Internal langguages
  3771. include ICETRAN and CDL.  "An Integrated Computer System for Engineering
  3772. Problem Solving", D. Roos, Proc SJCC 27(2), AFIPS (Spring 1965).  Sammet
  3773. 1969, pp.615-620.
  3774.  
  3775. ICETRAN - An extension of FORTRAN IV.  Component of ICES.  Sammet 1969,
  3776. p.617.
  3777.  
  3778. ici - Tim Long.  Similar to C.  Dynamic arrays, database features, screen
  3779. handling.
  3780. ftp: extro.ucc.su.edu.au:pub/ici.cpio.Z
  3781.  
  3782. Icon - Griswold, 1970's.  A descendant of SNOBOL4 with Pascal-like syntax. 
  3783. Icon is a general-purpose language with special features for string
  3784. scanning.  Dynamic types.  The central theme of Icon is the generator: when
  3785. an expression is evaluated it may be suspended and later resumed, producing
  3786. a result sequence of values until it fails.  Resumption takes place
  3787. implicitly in two contexts: iteration which is syntactically loop-like
  3788. ('every-do'), and goal-directed evaluation in which a conditional
  3789. expression automatically attempts to produce at least one result. 
  3790. Expressions that fail are used in lieu of Booleans.  Data backtracking is
  3791. supported by a reversible assignment.  Icon also has co-expressions, which
  3792. can be explicitly resumed at any time.  "The Icon Programming Language",
  3793. Ralph & Marge Griswold, 2nd ed P-H 1990.
  3794. ftp: cs.arizona.edu
  3795. list: icon-group@arizona.edu
  3796.  
  3797. Iconicode - 1990-1992.  Visual dataflow language, token-based with
  3798. hierarchical, recursive and iterative constructs.  Version: IDF with
  3799. extensions for image processing.  "IDF: A Graphical Data Flow Programming
  3800. Language for Image Processing and Computer Vision", Neil Hunt, Proc IEEE
  3801. Conf on Systems Man & Cybernetics, IEEE, Nov 1990.  Available from Iconicon
  3802. <icon@teleos.com>.
  3803.  
  3804. IC-Prolog - Clark & McCabe, Imperial College 1979.  Logic language with
  3805. coroutining.  "IC-Prolog Language Features", K.L. Clark <klc@doc.ic.ac.uk>
  3806. et al in Logic Programming, K.L. Clark et al eds, pp.253-266, Academic
  3807. Press 1982.
  3808.  
  3809. IC Prolog ][ - Imperial College.  A Prolog with multithreading, TCP
  3810. primitives for interprocess communication, mailboxes, and an interface to
  3811. Parlog.  "IC Prolog ][: A Language for Implementing Multi-Agent Systems",
  3812. Y. Cosmadopoulos et al, in Tutorial and Workshop on Coperating Knowledge
  3813. Based Systems, Keele U 1992.
  3814. info: Y. Cosmadopoulos <yac@doc.ic.ac.uk>
  3815.       Damien Chew <dac@doc.ic.ac.uk>
  3816. ftp:doc.ic.ac.uk:computing/programming/languages/icprolog/pd-ICP-0.90.tar.Z
  3817.  
  3818. Id - Irvine Dataflow.  Arvind & Gostelow.  Single assignment language, used
  3819. on MIT's Tagged-Token Dataflow Architecture (and soon on Motorola's
  3820. Monsoon).  Incrementally compiled, non-strict.  "An Asynchronous
  3821. Programming Language for a Large Multiprocessor Machine", Arvind et al,
  3822. TR114a, Dept ISC, UC Irvine, Dec 1978.  "The U-Interpreter", Arvind et al,
  3823. Computer 15(2):42-50 (1982).  (See Id Nouveau).
  3824.  
  3825. IDAMS - Pictorial retrieval language, implemented in APL.  "Concept of the
  3826. Diagnostic Image Workstation", D. Meyer-Ebrecht, Proc 2nd Conf on Picture
  3827. Archiving (PACS II), SPIE 418, pp.180-183 (1983).
  3828.  
  3829. IDEA - Interactive Data Entry/Access.  Data General.  A language in which
  3830. you designed the screen first, and then wrote the program around the
  3831. predefined fields.  Precursor to the DG COBOL Screen Section.
  3832.  
  3833. IDEAL - Van Wyk, Stanford 1980.  Numerical constraint language for
  3834. typesetting graphics into documents.  Inspired partly by Metafont.  "A
  3835. High-Level Language for Specifying Pictures", C.J. Van Wyk, ACM Trans
  3836. Graphics 1(2):163-182 (Apr 1982).  Distributed as part of Troff.
  3837.  
  3838. IDL -
  3839.  
  3840.   1. Interactive Data analysis Language.  Xerox.  Built on Interlisp-D.
  3841.  
  3842.   2. Interface Description Language.  Nestor, Lamb & Wulf, CMU 1981.
  3843. Description of data structures to be passed between the components of an
  3844. application, to provide a language-independent intermediate representation. 
  3845. "The Interface Description Language", R. Snodgrass, Computer Science Press
  3846. 1989.  Also SIGPLAN Notices 22(11) (Nov 1987) special issue.
  3847. list: info-idl@sei.cmu.edu
  3848.  
  3849.   3. Interface Definition Language.  Project DOE, SunSoft, Inc.  Part of an
  3850. effort to integrate distributed object technology into the Solaris OS.  IDL
  3851. provides the standard interface between objects, and is the base mechanism
  3852. for object interaction.
  3853. info: <idl-cfe@sun.com> or Mache Creeger, SunSoft Inc (415)336-5884.
  3854. ftp: omg.org:pub/omg_idl_cfe.tar.Z
  3855.  
  3856. IDMS - Pictorial query language, an extension of Sequel2.  "A Management
  3857. System for an Integrated Database of Pictures and Alphanumeric Data", G.Y.
  3858. Tang, Computer Graphics Image Processing 16:270-286 (1981).
  3859.  
  3860. Id Nouveau - Arvind <arvind@lcs.mit.edu> & Nikhil <nikhil@crl.dec.com>, LCS
  3861. MIT, ca. 1986.  Dataflow language, began as a functional language, added
  3862. streams, resource managers and I-structures (mutable arrays).  Loops are
  3863. syntactic sugar for tail recursion.  "Id Nouveau Reference Manual", R.S.
  3864. Nikhil, CS TR, MIT, March 1988.  "Id (Version 90.1) Reference Manual", R.S.
  3865. Nikhil, CSG Memo 284-2, LCS MIT, July 15, 1991.  (See Id).
  3866.  
  3867. IDOL - Icon-Derived Object Language.  Object-oriented preprocessor for
  3868. Icon.  "Programming in Idol: An Object Primer", C.L. Jeffery, U Arizona CS
  3869. TR #90-10.
  3870. ftp: src.doc.ic.ac.uk:pub/languages/icon/idol.tar.Z
  3871.  
  3872. IDS/I - Integrated Data Store.  Extension to COBOL involving "chains"
  3873. (circular lists), for GE computers.  "A General Purpose Programming System
  3874. for Random Access Memories", C.W. Bachman et al, Proc FJCC 26(1), AFIPS
  3875. (Fall 1964).  Sammet 1969, p.376.
  3876.  
  3877. IF1 - Graph language used as an intermediate language for dataflow
  3878. hardware.  Used by the OSC SISAL compiler.  "The Manchester Prototype
  3879. Dataflow Computer", J.R. Gurd et al, CACM 28(1):34-52 (Jan 1985).
  3880.  
  3881. IF2 - Graph language used by the OSC SISAL compiler.
  3882.  
  3883. IFIP - Subset of ALGOL.  Sammet 1969, p.180.
  3884.  
  3885. IFP - Illinois FP.  Arch Robinson.  Variant of FP with Algol-like syntax. 
  3886. "The Illinois Functional Programming Interpreter", A.D. Robison, Proc 1987
  3887. SIGPLAN Conf on Interpreters and Interpretive Techniques (June 1987). 
  3888. "Illinois Functional Programming: A Tutorial", A.D. Robison, BYTE Feb 1987.
  3889. ftp: a.cs.uiuc.edu:pub/ifp - Versions for Unix and MS-DOS
  3890.  
  3891. IFX - "Type Reconstruction with First-Class Polymorphic Values", J. O'Toole
  3892. et al, SIGPLAN Notices 24(7):207-217 (Jul 1989).
  3893.  
  3894. IGL - Interactive Graphic Language.  Used primarily by Physics Dept at
  3895. Brooklyn Poly, uses numerical methods on vectors to approximate continuous
  3896. function problems that don't have closed form solutions. [Is this being
  3897. confused with Tektronix's graphics library by the same name?]
  3898.  
  3899. IIS - Idealized Instruction Set.  Assembly language for the Flagship
  3900. parallel machine.  "An Idealized Instruction Set for a Packet Rewrite
  3901. Machine", J. Sargeant, Manchester U, 1988.
  3902.  
  3903. IITRAN - Simple PL/I-like language for students, on IBM 360.  "The IITRAN
  3904. Programming Language", R. Dewar et al, CACM 12(10):569-575 (Oct 1969).
  3905.  
  3906. ILIAD - Real time language.  "On the Design of a Language for Programming
  3907. Real-Time Concurrent Processes", H.A. Schutz, IEEE Trans Soft Eng SE-
  3908. 5(3):248-255 (May 1979).
  3909.  
  3910. ILLIAC - Assembly language for the ILLIAC computer.  Listed in CACM
  3911. 2(5):16, (May 1959) p.16.
  3912.  
  3913. ILOC - Rice U.  Register-oriented intermediate language targeted to PC/RT. 
  3914. Source languages include FORTRAN and Russell.
  3915.  
  3916. IMP -
  3917.  
  3918.   1. IMProved Mercury Autocode.  Used to code the Edinburgh Multi Access
  3919. System (EMAS), one of the first OS's written in a high-level language,
  3920. apparently predating Unix.  References are in J British Computer Soc.  (See
  3921. Autocode).
  3922.  
  3923.   2. Extensible dialect of ALGOL-60, on CDC 1604.  "Experience with an
  3924. Extensible Language", Edgar T. Irons, CACM 13(1):31-39 (Jan 1970).
  3925.  
  3926.   3. Interpretive Menu Processor.  Used to implement much of the user
  3927. interface of the Alis office automation package from Applix, Inc.
  3928.  
  3929. Ina Jo - [FDM?]  "The Ina Jo Specification Language Reference Manual", J.
  3930. Scheid et al, TR TM-(L)-6021/001/00, SDC Mar 1985.
  3931.  
  3932. Info BASIC - Variant of Pick BASIC used with PRIME's PRIMOS.
  3933.  
  3934. Information Algebra - Theoretical formalism for DP, never resulted in a
  3935. language.  Language Structure Group of CODASYL, ca. 1962.  Sammet 1969,
  3936. 709.
  3937.  
  3938. Inglish - English-like language used for Adventure games like "The Hobbit"
  3939. (could distinguish between "take the rope and axe" and "take the money and
  3940. run").
  3941.  
  3942. InnovAda - Object-oriented extension to Ada, said to be LISP-like. 
  3943. Implemented as a preprocessor.
  3944.  
  3945. INTCODE - Intermediate language used in the implementation of BCPL.  "BCPL
  3946. - The Language and its Compiler", Martin Richards & Colin Whitby-Stevens,
  3947. Cambridge U Press 1979.  (See OCODE).
  3948.  
  3949. INTELLECT - Larry Harris, 1977.  A query language, close to natural
  3950. English.
  3951.  
  3952. INTERCAL - (Allegedly stands for "Compiler Language With No Pronounceable
  3953. Acronym").  Woods & Lyon, Princeton U, May 26, 1972.  Claims to have
  3954. nothing in common with any other major programming language.  "The INTERCAL
  3955. Programming Language Reference Manual", Donald R. Woods & James M. Lyon. 
  3956. C-INTERCAL implementation as a C preprocessor by Eric Raymond.
  3957. ftp: ftp.white.toronto.edu, also comp.sources.misc/Volume16
  3958.  
  3959. INTERCOM - Assembly language for the G-15.  Listed in CACM 2(5):16 (May
  3960. 1959).
  3961. Versions: INTERCOM 101, INTERCOM 1000.
  3962.  
  3963. INTERLISP - Once INTERLISP was one of two main branches of LISP (the other
  3964. being MACLISP).  In 1981 Common LISP was begun in an effort to combine the
  3965. best features of both.  INTERLISP includes a LISP programming environment. 
  3966. Dynamically scoped.  "INTERLISP Programming Manual", W. Teitelman, TR,
  3967. Xerox Rec Ctr 1975.  Version: INTERLISP-D.
  3968.  
  3969. Intermediate Programming Language - Arthur W. Burks.  A very early attempt
  3970. to express machine language at a higher level of abstraction.  Like
  3971. Plankalkul, it used a right-handed style of assignment, in which the new
  3972. value appears on the right.
  3973.  
  3974. Interpress - Xerox.  Interpretive FORTH-like graphics language, possibly
  3975. the first page description language, predating PostScript.  Both are
  3976. descendants of JaM.  Used on Xerox printers.  "Interpress, The Source
  3977. Book", Steven Harrington et al, P-H 1988.
  3978.  
  3979. Iota - Specification language.  "The Iota Programming System", R. Nakajima
  3980. er al, Springer 1983.
  3981.  
  3982. IPL - Information Processing Language.  Allen Newell, J.C. Shaw, H. Simon,
  3983. Carnegie ca. 1956.  Said to be the first list-processing language, also the
  3984. first language to support recursion.  Very low level.  Sammet 1969, pp.388-
  3985. 400.  "Information Processing Language-V Manual", A. Newell ed, P-H 1965. 
  3986. Versions: IPL-I (never implemented), IPL-II (1957 for JOHNNIAC), IPL-III
  3987. (existed briefly), IPL-IV, IPL-V (1958, for IBM 650, 704, 7090, many
  3988. others.  Widely used), IPL-VI.
  3989.  
  3990. IPS - Threaded language.  "IPS, An Unorthodox High Level Language", K.
  3991. Meinzer, BYTE pp.146-159 (Jan 1979).
  3992.  
  3993. IQ - Pictorial query language, implemented in Ratfor.  "Structured
  3994. Implementation of an Image Query Language", Y.E. Lien et al, in Database
  3995. Techniques for Pictorial Applications, A. Blaser ed, pp.416-430.
  3996.  
  3997. IRDATA - Industrial Robot DATA.  A standardized robot control code. 
  3998. "IRDATA, Industrial Robot Data", DIN 66313, Beuth-Verlag 1991.
  3999.  
  4000. IRL - Industrial Robot Language.  A high-level language for programming
  4001. industrial robots.  "IRL, Industrial Robot Language", DIN 66312, Beuth-
  4002. Verlag 1992.
  4003.  
  4004. Ironman - HOLWG, DoD, 1978.  Fourth of the series of DoD requirements that
  4005. led to Ada.  "Department of Defense Requirements for High Order Computer
  4006. Programming Languages", SIGPLAN Notices 12(12):39-54 (Dec 1977).  (See
  4007. Strawman, Woodenman, Tinman, Steelman).
  4008.  
  4009. Isabelle-92 - A generic theorem prover, supporting a wide variety of
  4010. logics.  A system of type classes allows polymorphic object-logics with
  4011. overloading and automatic type inference.
  4012. ftp: ftp.cl.cam.ac.uk:/ml/92.tar.Z
  4013.  
  4014. ISBL - Mathematical query language.
  4015.  
  4016. ISETL - Interactive SETL.  Gary Levin <gary@clutx.clarkson.edu>, Clarkson
  4017. U.  "An Introduction to ISETL Version 1.9", G.M. Levin, Dept MCS, Clarkson
  4018. U.  Current version: 3.0.
  4019. ftp: sun.soe.clarkson.edu, for MS-DOS, Mac, Unix, VAX/VMS, and source.
  4020.  
  4021. ISIS - 
  4022.  
  4023.   1. Dialect of JOSS.  Sammet 1969, p.217.
  4024.  
  4025.   2. Concurrent language?
  4026.  
  4027. ISO Pascal - Pascal standard, ISO 7185-1982.  Changes from Jensen & Wirth's
  4028. Pascal include: name equivalence; names must be bound before they are used;
  4029. loop index must be local to the procedure; formal procedure parameters must
  4030. include their arguments; conformant array schemas.  
  4031.  
  4032. ISP - Instruction Set Processor.  A family of languages for describing the
  4033. instruction sets of computers.  "Computer Structures: Readings and
  4034. Examples", D.P. Siewiorek et al, McGraw-Hill 1982.
  4035.  
  4036. ISPL - Instruction Set Processor Language.  ca 1971.  Original ISP
  4037. language, written in BLISS.  "Computer Structures: Readings and Examples",
  4038. D.P. Siewiorek et al, McGraw-Hill 1982.
  4039.  
  4040. ISPS - Instruction Set Processor Specifications.  Operational hardware
  4041. specification language.  Successor to ISPL.  IEEE Trans Computers, C-
  4042. 30(1):24-80 (1981). [Bell, Newell, Siewiorek, Barbacci 1982?]
  4043.  
  4044.  
  4045. From billk@cs.ukans.edu Fri Feb  5 05:42:30 1993
  4046. Received: from mars.cs.ukans.edu by cogsci.Berkeley.EDU (5.63/1.29)
  4047.     id AA25992; Fri, 5 Feb 93 05:42:27 -0800
  4048. From: Bill Kinnersley <billk@cs.ukans.edu>
  4049. Date: Fri, 5 Feb 1993 07:40:54 CST
  4050. X-Mailer: Mail User's Shell (7.2.5 10/14/92)
  4051. To: muir@cogsci.Berkeley.EDU
  4052. Subject: Part 5
  4053. Message-Id:  <9302050740.aa07606@cs.ukans.edu>
  4054.  
  4055. ISWIM - If You See What I Mean.  Landin 1966.  ISWIM is purely functional,
  4056. a sugaring of lambda calculus, and the ancestor of most modern applicative
  4057. languages.  An ISWIM program is a single expression qualified by 'where'
  4058. clauses (auxiliary definitions including equations among variables),
  4059. conditional expressions and function definitions.  ISWIM was the first
  4060. language to use lazy evaluation, and introduced the offside rule for
  4061. indentation.  "The Next 700 Programming Languages", P.J. Landin, CACM
  4062. 9(3):157-166 (Mar 1966).
  4063.  
  4064. IT - Internal Translator.  A.J. Perlis et al, Carnegie Tech ca 1957.  Early
  4065. compiler for math originally for Burroughs 205, then IBM 650.  Forerunner
  4066. of RUNCIBLE, GATE, CORRELATE and GAT.  IT source code was converted to PIT,
  4067. thence to SPIT.  Sammet 1969, pp.139-141.  Versions: IT-2 produced machine
  4068. language directly, IT-3 developed at Carnegie added double-precision
  4069. floating point.  CACM 1(5):22 (1958).
  4070.  
  4071. Ivan - A Diana-like language making up part of VHDL.  "VHDL - The Designer
  4072. Environment", A. Gilman, IEEE Design & Test 3, (Apr 1986).
  4073.  
  4074. Iverson's Language - APL, which went unnamed for many years.  Sammet 1969,
  4075. p.770.
  4076.  
  4077. IVTRAN - 1966.  Parallel FORTRAN for the Illiac IV.
  4078.  
  4079. J - Derivative and redesign of APL.  Purely functional with lexical scope
  4080. and more conventional control structures, plus several new concepts such as
  4081. function rank and function arrays.  "APL\?"", Roger K.W. Hui et al, APL90
  4082. Conf Proc, Quote Quad 20(4):192-200.  Version 4.1 for MS-DOS, Sun, Mac,
  4083. Archimedes.  Source available in C from Iverson Software, (416)925-6096.
  4084. ftp: watserv1.waterloo.edu:languages/apl/j
  4085.  
  4086. J3 - Dialect of JOVIAL.  "Military Standard JOVIAL (J3)", MIL-STD-1588
  4087. (USAF), June 1976.
  4088.  
  4089. J73 - Yep, another JOVIAL dialect.  "Military Standard JOVIAL (J73)",
  4090. MIL-STD-1589 (USAF), Feb 1977.
  4091.  
  4092. JACAL - JAffer's CAnonical ALgebra.  A. Jaffer<jaffer@zurich.ai.mit.edu>. 
  4093. Symbolic math program, written in Scheme.
  4094. ftp: altdorf.ai.mit.edu:archive/scm/jacal1a0.tar.Z
  4095.  
  4096. Jade - 
  4097.  
  4098.   1. U Washington, late 80's.  A strongly-typed language, object-oriented
  4099. but without classes.  For type research.  The compiler output is Smalltalk. 
  4100. [Submitter claimed that Jade has exactly one user!]
  4101.  
  4102.   2. Implicit coarse-grained concurrency.  The constructs 'withth',
  4103. 'withonly' and 'without' create tasks with specified side effects to shared
  4104. data objects.  Implemented as a C preprocessor.  "Coarse-Grain Parallel
  4105. Programming in Jade", M.S. Lam et al, SIGPLAN Notices 26(7):94-105 (Jul
  4106. 1991).
  4107.  
  4108. JaM - John and Martin.  J. Warnock & M. Newell, PARC 1978.  Interpretive
  4109. FORTH-like graphics language, forerunner of both Interpress and PostScript. 
  4110. Mentioned in PostScript Language reference Manual, Adobe Systems, A-W 1985.
  4111.  
  4112. Janus - 
  4113.  
  4114.   1. Distributed language with an ask/tell constraint system.  "Janus: A
  4115. Step Towards Distributed Constraint Programming", V. Saraswat
  4116. <saraswat@parc.xerox.com> et al in Logic Programming: Proc 1990 North Am
  4117. Conf, S. Debray et al eds, MIT Press 1990.
  4118. ftp: cs.arizona.edu:janus/qdjanus-1.2, a sequential implementation built on
  4119. SICStus Prolog.
  4120.  
  4121.   2. "Experience with the Universal Intermediate Language Janus", B.K.
  4122. Haddon et al, Soft Prac & Exp 8(5):601-616 (Sep 1978).
  4123.  
  4124. JAZ - Early system on LGP-30.  Listed in CACM 2(5):16 (May 1959).
  4125.  
  4126. JCL - Job Control Language.  Batch language on IBM OS/360 systems. 
  4127. Notoriously difficult to program in.
  4128.  
  4129. JCS-13 - Early system on IBM 701.  Listed in CACM 2(5):16 (May 1959).
  4130.  
  4131. JEAN - A dialect of JOSS.
  4132.  
  4133. JOSS - JOHNNIAC Open Shop System.  Charles L. Baker, RAND 1964.  An early
  4134. simple interactive calculator language.  "JOSS Users' Reference Manual",
  4135. R.L. Clark, Report F-1535/9, RAND Corp (Jan 1975)  Sammet 1969, pp.217-226. 
  4136. Versions: JOSS I and JOSS II.
  4137.  
  4138. JOVIAL - Jule's Own Version of IAL.  Jules I. Schwartz 1959-1960.  Based on
  4139. ALGOL 58, with extensions for large scale real-time programming.  Saw
  4140. extensive use by the US Air Force.  The data elements were items, entries
  4141. (records) and tables.  CACM 6(12):721 (Dec 1960)[?].  Versions include
  4142. JOVIAL I (IBM 709, 1960), JOVIAL II (IBM 7090, 1961) and JOVIAL 3 (1965). 
  4143. Dialects: J3, JOVIAL J73, JS, JTS.
  4144.  
  4145. Joyce - Brinch Hansen.  Distributed language based on Pascal and CSP. 
  4146. "Joyce - A Programming Language for Distributed Systems", Per Brinch
  4147. Hansen, Soft Prac & Exp 17(1):29-50 (Jan 1987).
  4148.  
  4149. JPL - JAM Programming Language.  Imperative string-based language, part of
  4150. the JAM tool for developing screen (non-window) applications.  JYACC Corp.
  4151.  
  4152. JPLDIS - Jet Propulsion Laboratory Display Information System.  Jack
  4153. Hatfield, George Masters, W. Van Snyder, Jeb Long et al, JPL.  Query system
  4154. for UNIVAC 1108 [or PDP's?] written in FORTRAN, based on Tymshare's
  4155. "Retrieve".  Indirectly led to Vulcan[1] which led to dBASE II.
  4156.  
  4157. JS - Dialect of JOVIAL.  Sammet 1969, p.639.
  4158.  
  4159. JTS - Simple dialect of JOVIAL.  Sammet 1969, p.528.
  4160.  
  4161. Juno - Numerical constraint-oriented language for graphics applications. 
  4162. Solves its constraints using Newton-Raphson relaxation.  Inspired partly by
  4163. Metafont.  "Juno, a Constraint-Based Graphics System", G. Nelson in
  4164. SIGGRAPH '85 Conf Readings, B.A. Barsky ed, Jul 1985, pp.235-243.
  4165.  
  4166. Jym - Patrick Bellot, France.  A predecessor to Graal.
  4167.  
  4168. K5 - Early system on Larc computer.  Listed in CACM 2(5):16 (May 1959).
  4169.  
  4170. Kaleidoscope - Freeman-Benson <bnfb@cs.uvic.ca>, U Washington and
  4171. Universite de Nantes, 1989; U Victoria, 1992.  Object-oriented language
  4172. which mixes imperative and constraint-oriented features.  Similar to Siri. 
  4173. Vaguely related to Prose[2].  "Kaleidoscope: Mixing Objects, Constraints
  4174. and Imperative Programming", B.N. Freeman-Benson, SIGPLAN Notices
  4175. 25(10):77-88 (OOPSLA/ECOOP '90) (Oct 1990).  "Constraint Imperative
  4176. Programming", B.N. Freeman-Benson, Ph.D. Thesis, TR 91-07-02, U Wash
  4177. (1991).  "Constraint Imperative Programming", Freeman-Benson et al, IEEE
  4178. Conf on Comp Lang, Apr 1992.  Versions: Kaleidoscope '90, Kaleidoscope '91.
  4179.  
  4180. Kali - Data parallel language.  "Supporting Shared Data Structures on
  4181. Distributed Memory Architecures", C. Koelbel et al in Second ACM SIGPLAN
  4182. Symp on Princ and Prac of Parallel Programming, pp.177-186, Mar 1990.
  4183.  
  4184. KAP - Kernel Andorra Prolog.  "Kernel Andorra Prolog and its Computation
  4185. Model", S. Haridi <seif@sics.se> et al, in Logic Programming: Proc 7th Intl
  4186. Conf, MIT Press 1990.  Predecessor to AKL.
  4187.  
  4188. Karel - Language featured in Karel the Robot: A Gentle Introduction to
  4189. Computer Programming, Richard E. Pattis, Wiley 1981.
  4190. ftp: wuarchive.wustl.edu:/mirrors/unix-c/languages/pascal/karel.tar-z
  4191.  
  4192. KBMS - Expert system.
  4193.  
  4194. KCL - Kyoto Common LISP.  Compiles to ANSI C.  "Design and Implementation  
  4195. of Kyoto Common Lisp", T. Yuasa, J Info Proc 13(3):284-295 (1990).  "Kyoto
  4196. Common Lisp Report", T. Yuasa & M. Hagiya.
  4197. list: kcl@rascal.ics.utexas.edu
  4198.  
  4199. KEE - Knowledge Engineering Environment.  Frame-based expert system. 
  4200. Supports dynamic inheritance, multiple inheritance, polymorphism.  Classes,
  4201. meta-classes and objects are all treated alike.  A class  is an instance of
  4202. a meta-class.  Can control rules for merging of each field when multiple
  4203. inheritance takes  place.  Methods  are  written  in LISP.  Actions  may 
  4204. be triggered when fields are accessed or modified.  Extensive GUI
  4205. integrates with objects.  Can  easily make  object updates  to be 
  4206. reflected on  display or display selections  to update fields.   This can 
  4207. in turn trigger other  methods or  inference rules  which may  then update 
  4208. other parts of the display.  Intellicorp, for TI Explorer.  "The Role of
  4209. Frame-Based Representation in Reasoning", R. Fikes et al, CACM 28(9):904-
  4210. 920 (Sept 1985).
  4211.  
  4212. Kernel Parlog - Modeless intermediate language for Parlog compilation. 
  4213. "Notes on the Implementation of Parlog", K.L. Clark et al, J Logic Prog
  4214. 2(1):17-42 (1985).
  4215.  
  4216. Kevo - S. Taivalsaari <antero@csr.uvic.ca> Prototype-based object-oriented
  4217. system.
  4218. info:kevo-interest@ursamajor.uvic.ca
  4219. ftp:ursamajor.uvic.ca:/ursa/kevo
  4220.  
  4221. Kid - Kernel language for Id.  A refinement of P-TAC, used as an
  4222. intermediate language for Id.  Lambda-calculus with first-class let-blocks,
  4223. plus I-structures.  "A Syntactic Approach to Program Transformations", Z.
  4224. Ariola et al, SIGPLAN Notices 26(9):116-129 (Sept 1991).
  4225.  
  4226. KISS - Early system on IBM 650.  Listed in CACM 2(5):16 (May 1959).
  4227.  
  4228. KL0 - Sequential logic language based on Prolog, for the ICOT project,
  4229. Japan.
  4230.  
  4231. KL1 - Kernel Language 1.  An experimental AND-parallel version of KL0 for
  4232. the ICOT project, Japan.  An implementation of FGHC.  "Design of the Kernel
  4233. Language for the Parallel Inference Machine", U. Kazunori et al, Computer J
  4234. (Dec 1990).
  4235.  
  4236. Klerer-May System - Columbia U.  Early system with special math symbols. 
  4237. Its reference manual was two pages long!  "Further Advances in Two-
  4238. Dimensional Input-Output by Typewriter Terminals", M. Klerer et al, Proc
  4239. FJCC 31 (1967).  Sammet 1969, pp.284-294.
  4240.  
  4241. KL-ONE - Frame language.  "An Overview of the KL-ONE Knowledge
  4242. Representation System", R.J. Brachman and J. Schmolze, Cognitive Sci 9(2),
  4243. 1985.
  4244.  
  4245. KMODEL - An ancestor of Model-K.  "Preliminary Results on the BEHAVIOR
  4246. Specifications Language KMODEL-0", BEHAVIOR Memo 5-91, 1991, GMD, Sankt
  4247. Augustin, Germany
  4248.  
  4249. KOMPILER - Early system on IBM 701.  Listed in CACM 2(5):16 (May 1959).
  4250. Versions: KOMPILER 2 for IBM 701, KOMPILER 3 for IBM 704.
  4251.  
  4252. K&R C - C as originally described in The C Programming Language, B.
  4253. Kernighan and D. Ritchie, in contrast to the proposed ANSI standard C.
  4254.  
  4255. KRC - Kent Recursive Calculator.  Turner 1981.  Lazy functional language
  4256. based on SASL, with pattern matching, ZF expressions.  "Functional
  4257. Programming and its Applications", David A. Turner, Cambridge U Press 1982.
  4258.  
  4259. KRL - Frame language.  "An Overview of KRL, a Knowledge Representation
  4260. Language", D.G. Bobrow and T. Winograd, Cognitive Sci 1:1 (1977).
  4261.  
  4262. KRS - Frame-based language built on Common LISP.
  4263.  
  4264. KRYPTON - Frame language.  "An Essential Hybrid Reasoning System: Knowledge
  4265. and Symbol Level Acounts of of KRYPTON", R.J. Brachman et al, Proc IJCAI-
  4266. 85, 1985.
  4267.  
  4268. ksh - Korn Shell command interpreter for Unix.
  4269.  
  4270. L6 - Bell Telephone Laboratories Low-Level Linked List Language.  Ken
  4271. Knowlton, 1965.  List processing language, typeless.  "A Programmer's
  4272. Description of L6, Bell Telephone Laboratories' Low-Level Linked List
  4273. Language", K. Knowlton CACM 9(8):616-625 (Aug 1966).  Sammet 1969, pp.400-
  4274. 405.
  4275.  
  4276. LADY - "Key Concepts in the INCAS Multicomputer Project", J. Nehmer et al
  4277. IEEE Trans Soft Eng SE-13(8):913-923 (Aug 1987).
  4278.  
  4279. Lakota - Scripting language, extends existing OS commands.
  4280. info: Richard Harter <rh@smds.UUCP> SMDS Inc.
  4281.  
  4282. LAMBDA - A version of typed lambda calculus, used to describe semantic
  4283. domains.  "Outline of a Mathematical Theory of Computation", D.S. Scott, TM
  4284. PRG-2, PRG, Oxford U, 1971.
  4285.  
  4286. lambda-Prolog - An extension of standard Prolog, in which terms are typed
  4287. lambda-terms.  Prolog/Mali compiler uses the MALI abstract memory system. 
  4288. ftp: ftp.irisa.fr:pm/pm.tar.Z
  4289. info: pm@irisa.fr
  4290. list: prolog-mali@irisa.fr
  4291.  
  4292. LAMINA - Concurrent object-oriented language.  "Experiments with a
  4293. Knowledge-based System on a Multiprocessor", Third Intl Conf Supercomputing
  4294. Proc, 1988.  "ELINT in LAMINA, Application of a Concurent Object language",
  4295. Delagi et al, KSL-88-3, Knowledge Sys Labs, Stanford U.
  4296.  
  4297. Language H - Early business-oriented language developed by NCR.
  4298.  
  4299. Laning and Zierler - J.H. Laning Jr and N. Zierler, 1953-1954.  Possibly
  4300. the first true working algebraic compiler.  On MIT's Whirlwind computer. 
  4301. Sammet 1969, pp.131-132.
  4302.  
  4303. LAP - LISP Assembly Program.  Assembly language embedded into early LISP. 
  4304. Sammet 1969, p.597.  Also used by the Liar compiler for MIT Scheme.
  4305.  
  4306. LAP4 - Early assembly language for Linc-8 machine.
  4307.  
  4308. LAPSE - Single assignment language for the Manchester dataflow machine.  "A
  4309. Single Assignment Language for Data Flow Computing", J.R.W. Glauert, M.Sc
  4310. Diss, Victoria U Manchester, 1978.
  4311.  
  4312. Larch - The Larch Project develops aids for formal specifications.  Each
  4313. Larch specification has two components: an interface containing predicates
  4314. written in the LIL (Larch Interface Language) designed for the target
  4315. language and a 'trait' containing assertions about the predicates written
  4316. in LSL, the Larch Shared Language common to all.  "The Larch Family of
  4317. Specification Languages", J. Guttag et al, IEEE Trans Soft Eng 2(5):24-365
  4318. (Sep 1985).
  4319.  
  4320. LARCH/CLU - Larch specification language for CLU.  Used in Abstraction and
  4321. Specification in Program Development, B. Liskov & J. Guttag, MIT Press
  4322. 1986.
  4323.  
  4324. LaTeX - see TeX.
  4325.  
  4326. LAU - Langage a Assignation Unique.  Single assignment language for the LAU
  4327. dataflow machine, Toulouse.  "Pipelining, Parallelism and Asynchronism in
  4328. the LAU System", J.C. Syre et al, Proc 1977 Intl Conf Parallel Proc, pp.87-
  4329. 92.
  4330.  
  4331. LAURE - A language for knowledge representation combining object
  4332. orientation and logic programming.  Object-oriented exception handling and
  4333. a polymorphic type system.
  4334. info: Yves Caseau <caseau@france.bellcore.com>
  4335.  
  4336. LAVA - A language for VLSI that deals with "sticks", i.e. wires represented
  4337. as lines with thickness.  R.J. Matthews et al, "A Target Language for
  4338. Silicon Compilers", IEEE COMPCON, 1982, pp.349-353.
  4339.  
  4340. LAX - LAnguage eXample.  Toy language used to illustrate problems in
  4341. compiler design.  "Compiler Construction", W.M. Waite et al, Springer 1984.
  4342.  
  4343. LCC - Language for Conversational Computing.  CMU 1960's.  Similar to JOSS,
  4344. with declarations, pointers and block structure from ALGOL-60.  Implemented
  4345. for IBM 360/370 under TSS.  "LCC Reference Manual", H.R. Van Zoeren, CMU
  4346. 1969.
  4347.  
  4348. LCL - 
  4349.  
  4350.   1. The Larch interface language for ANSI standard C.  J.V. Guttag et al,
  4351. TR 74, DEC SRC, Palo Alto CA, 1991.
  4352.  
  4353.   2. Liga Control Language.  Controls the attribute evaluator generator
  4354. LIGA, part of the Eli compiler-compiler.  "LCL: Liga Control Language", U.
  4355. Kastens, U Paderborn.
  4356.  
  4357. LCS - Language for Communicating Systems.  Bernard Barthomieu.  A
  4358. concurrent SML with behaviors and processes, based upon higher order CCS. 
  4359. Implemented as a bytecode interpreter.  Version 3.1
  4360. ftp: laas.laas.fr:pub/lcs for Sun 3, Sun 4
  4361. info: Bernard Berthomieu <bernard@laas.laas.fr>
  4362. list: lcs@laas.laas.fr
  4363.  
  4364. LDL - "LDL: A Logic-Based Data-Language", S. Tsur et al, Proc VLDB 1986,
  4365. Kyoto Japan, Aug 1986, pp.33-41.
  4366.  
  4367. LDT - Logic Design Translator.  Computer system design analysis.  Sammet
  4368. 1969, p.621.
  4369.  
  4370. LE/1 - Langage External.  "An Evaluation of the LE/1 Network Command
  4371. Language Designed for the SOC Network", J. du Masle, in Command Languages,
  4372. C. Unger ed, N-H 1973.
  4373.  
  4374. LEAF - 
  4375.  
  4376.   1. LISP Extended Algebraic Facility.  "An Algebraic Extension to LISP",
  4377. P.H. Knowlton, Proc FJCC 35 (1969).
  4378.  
  4379.   2. "LEAF: A Language which Integrates Logic, Equations and Functions", R.
  4380. Barbuti et al in Logic Programming, Functions Relations and Equations, D.
  4381. DeGroot et al eds, P-H 1986, pp.201-238.
  4382.  
  4383. Lean - U Nijmegen and U East Anglia.  An experimental language based on
  4384. graph rewriting, useful as an intermediate language.  Descendant of Dactl0. 
  4385. "Towards an Intermediate Languae Based on Graph Rewriting", H.P. Barendregt
  4386. et al in PARLE: Parallel Architectures and Languages Europe, G. Goos ed,
  4387. LNCS 259, Springer 1987, pp.159-175.  (See Clean).
  4388.  
  4389. LEAP - Language for the Expression of Associative Procedures.  ALGOL-based
  4390. formalism for sets and associative retrieval, for TX-2.  Became part of
  4391. SAIL.  "An ALGOL-based Associative Language", J.A. Feldman et al, CACM
  4392. 12(8):439-449 (Aug 1969).
  4393.  
  4394. LECOM - Version of COMIT on GE 225 ca. 1966.  Sammet 1969, p.419.
  4395.  
  4396. LEDA - Combines imperative, object-oriented, and logic programming
  4397. language.  Tim Budd, Oregon State U. <budd@cs.orst.edu>.
  4398.  
  4399. LeFun - MCC, Austin.  Integration of logic and functional programming. 
  4400. "LeFun: Logic, Equations and Functions", H. Ait-Kaci et al, Proc 1987 Symp
  4401. on Logic Programming, San Francisco.
  4402.  
  4403. LEGOL - "Application of MP/3 to the Design and Implementation of LEGOL, A
  4404. Legally Oriented Language", S.H. Mandil et al, Intl Symp Programming, paris
  4405. 1974.
  4406.  
  4407. Le-Lisp - Jerome Chailloux and Emmanuel St James, INRIA, France.  A LISP
  4408. dialect close to Common Lisp, lexically scoped, with a CLOS-like object
  4409. system.  Uses both packages and modules.  "le-lisp: A Portable and
  4410. Efficient Lisp System", J. Chailloux et al, Proc 1984 ACM Symp on Lisp and
  4411. Functional Programming, ACM.  Version v.16, available from ILOG, France.
  4412.  
  4413. Leo - General-purpose systems language, syntactically like Pascal and Y,
  4414. semantically like C.  "The Leo Programming Language", G. Townsend, CS TR
  4415. 84-7, U Arizona 1984.
  4416.  
  4417. Lex  - Input language to the Lex scanner generator.  "Lex - A Lexical
  4418. Analyzer Generator", M.E. Lesk, CS TR 39, Bell Labs (Oct 1975).  (See
  4419. Flex).
  4420. Implementation:
  4421.   ML-lex - Implementation and output in SML/NJ.
  4422.   ftp: research.att.com:dist/ml/75.tools.tar.Z
  4423.  
  4424. LG - Simple language for analyic geometry, with graphic output.  "LG: A
  4425. Language for Analytic Geometry", J. Reymond, CACM 12(8) (Aug 1969). [???]
  4426.  
  4427. LGDF - Large-Grain DataFlow.  "A Large-grain Data Flow Scheduler for
  4428. Parallel Processing on Cyberplus", R.G. Babb et al, Proc 1986 Intl Conf on
  4429. Paralllel Proc, Aug 1986.
  4430.  
  4431. LGEN - Bell Labs.  A logic language for VLSI implementation.  S.C. Johnson,
  4432. "Code Generation for Silicon", Proc 10th POPL, 1983.
  4433.  
  4434. LGN - Linear Graph Notation.  A linearized representation of TCOL trees. 
  4435. B.W. Leverett et al, "An Overview of the Production Quality Compiler-
  4436. Compiler Projects", TR CMU-CS-79-105, Carnegie Mellon 1979.  (See TCOL)
  4437.  
  4438. LIDO - Input language for the attribute evaluator generator LIGA (a
  4439. successor of GAG and a subsystem of the Eli compiler-compiler).  LIDO is
  4440. derived from GAG's input language ALADIN.  "LIDO: A Specification Language
  4441. for Attribute Grammars", U. Kastens, Fab Math-Inf, U Paderborn (Oct 1989).
  4442.  
  4443. LIFE - Logic of Inheritance, Functions and Equations.  Hassan Ait-Kacy
  4444. <hak@prl.dec.com> et al, MCC, Austin, 1987.  Object-oriented, functional,
  4445. and constraint-based.  Integration of ideas from LOGIN and LeFun.  "Is
  4446. There a Meaning to LIFE?", H. Ait-Kacy et al, Intl Conf on Logic Prog,
  4447. 1991.
  4448. ftp: gatekeeper.dec.com:pub/plan/Life.tar.Z - Wild_LIFE interpreter from
  4449. Paradise project at DEC's Paris Research Lab
  4450. list: life-users@prl.dec.com
  4451.  
  4452. Lila - Patrick Salle'<salle@geocub.greco-prog.fr>.  A small assembly-like
  4453. language used for implementation of Actor languages.  [Plasma perhaps?]
  4454.  
  4455. LIMDEP - Linear programming language used by economists.
  4456.  
  4457. LIMP - "Messages in Typed Languages", J. Hunt et al, SIGPLAN Notices
  4458. 14(1):27-45 (Jan 1979).
  4459.  
  4460. Linc - Burroughs/Unisys 4GL.  Designed in New Zealand.
  4461.  
  4462. Lincoln Reckoner - ca 1965.  Interactive math including matrix operations,
  4463. on TX-2.  "The Lincoln Reckonere: An Operation-Oriented On-line Facility
  4464. with Distributed Control", A.N. Stowe et al, Proc FJCC 29 (1966).  Sammet
  4465. 1969, pp.245-247.
  4466.  
  4467. Linda - Yale.  A "coordination language", providing a model for concurrency
  4468. with communication via a shared tuple space.  Usually implemented as a
  4469. subroutine library for a specific base language.  "Generative Communication
  4470. in Linda", D. Gelernter <gelernter@cs.yale.edu> ACM TOPLAS 7(1):80-112
  4471. (1985).  "Linda in Context", N. Carreiro <carreiro@cs.yale.edu> et al, CACM
  4472. 32(4):444-458 (Apr 1989).  (See C-Linda, Ease, Fortran-Linda, LindaLISP,
  4473. Lucinda, Melinda, Prolog-Linda).
  4474.  
  4475. LindaLISP - Yep, you guessed it.
  4476.  
  4477. Lingo - An animation scripting language.  MacroMind Director V3.0
  4478. Interactivity Manual, MacroMind 1991.
  4479.  
  4480. LINGOL - LINguistics Oriented Language.  Natural language processing.  "A
  4481. Linguistics Oriented Programming Language", V.R. Pratt, Third Intl Joint
  4482. Conf on AI, 1973.
  4483.   
  4484. LIPL - Linear IPL.  A linearized (i.e. horizonal format) version of IPL-V. 
  4485. Sammet 1969, p.394.  R. Dupchak, "LIPL - Linear Information Processing
  4486. Language", Rand Memo RM-4320-PR, Feb 1965.
  4487.  
  4488. LIS - Langage Implementation Systeme.  "The System Implementation Language
  4489. LIS", J.D. Ichbiah et al, CII Honeywell-Bull, TR 4549 E/EN, Louveciennes
  4490. France (Dec 1974).
  4491.  
  4492. LISA - Statistical data analysis.  Similar to S.
  4493. ftp: dolphin.mit.edu.
  4494.  
  4495. LISP - LISt Processing.  John McCarthy <jmc@sail.stanford.edu> et al, MIT
  4496. late 50's.  Symbolic functional recursive language based on lambda-
  4497. calculus, used especially for AI and symbolic math.  Many dialects.  Atoms
  4498. and lists.  Dynamic scope.  Both programs and data are represented as list
  4499. structures.  Versions include LISP 1 (Original version), LISP 1.5 (MIT
  4500. 1959), LISP 1.75, LISP 1.9.
  4501.  
  4502. LISP 2 - LISP 1.5 with an ALGOL60-like surface syntax.  Also optional type
  4503. declarations, new data types including integer-indexed arrays and character
  4504. strings, partial-word extraction/insertion operators and macros.  A
  4505. pattern-matching facility similar to COMIT was proposed.  "The LISP 2
  4506. Programming Language and System", P.W. Abrahams et al, Proc FJCC 29:661-
  4507. 676, AFIPS (Fall 1966).
  4508.  
  4509. LISP70 - LISP dialect, a descendant of MLISP and MLISP2.  Also known as
  4510. PLISP and VEL.  Useful for parsing.  Only the pattern-matching system was
  4511. published and fully implemented.  According to Alan Kay, LISP70 had an
  4512. influence on Smalltalk-72.  "The LISP70 Pattern Matching System, Larry
  4513. Tesler et al, IJCAI 73.
  4514.  
  4515. LISP A - "LISP A: A LISP-like System for Incremental Computing", E.J.
  4516. Sandewall, Proc SJCC 32 (1968).
  4517.  
  4518. Lispkit Lisp - Purely functional version of LISP.  "Functional Programming,
  4519. Application and Implementation", P. Henderson, P-H 1980.
  4520.  
  4521. Lisp-Linda - P. Dourish, U Edinburgh 1988.
  4522.  
  4523. LISP Machine LISP - Zetalisp.
  4524.  
  4525. Lisptalk - "Concurrent Programming Language Lisptalk", C. Li, SIGPLAN
  4526. Notices 23(4):71-80 (Apr 1988).
  4527.  
  4528. LITTLE - Typeless language used to produce machine-independent software. 
  4529. LITTLE has been used to implement SETL.  "Guide to the LITTLE Language", D.
  4530. Shields, LITTLE Newsletter 33, Courant Inst (Aug 1977).
  4531.  
  4532. Little Smalltalk - A line-oriented near-subset of Smalltalk-80.  "A Little
  4533. Smalltalk", Timothy Budd, A-W 1987.
  4534. ftp: cs.orst.edu, source in C.
  4535.  
  4536. LLM3 - J. Chailloux.  Assembly language for a virtual machine, the
  4537. implementation language for Le-Lisp.
  4538.  
  4539. LM-Prolog - Lisp Machine Prolog.  K. Kahn et al, 1983.  "LM-Prolog User
  4540. Manual", M. Carlsson et al, Uppsala Dec 1983.
  4541. ftp: sics.se: archive/lm-prolog.tar.Z - Prolog interpreter in Zetalisp
  4542.  
  4543. LM3 - The Larch interface language for Modula-3.  (See Larch).  "LM3: A
  4544. Larch/Modula-3 Interface Language", Kevin D. Jones, TR 72, DEC SRC, Palo
  4545. Alto CA.
  4546.  
  4547. LML - 
  4548.  
  4549.   1. Chalmers U Tech, Goteborg, Sweden.  Lazy, completely functional
  4550. variant of ML[2].  Implemented on the G-machine.
  4551. ftp: piggy.cs.chalmers.se
  4552.  
  4553.   2. Logical ML.  Adds to Lazy ML a data type of 'theories' whose objects
  4554. represent logic programs.  "Logic Programming within a Functional
  4555. Framework", A. Brogi et al, in Programming Language Implementation and
  4556. Logic Programming, P. Deransart et al eds, LNCS 456, Springer 1990.
  4557.  
  4558. LNF - "A Fully Lazy Higher Order Purely Functional Programming Language
  4559. With Reduction Semantics", K.L. Greene, CASE Center TR 8503, Syracuse U
  4560. 1985.
  4561.  
  4562. L&O - Logic and Objects.  Implemented as a front end for IC Prolog.  "Logic
  4563. and Objects", Frank McCabe, Prentice-Hall.
  4564. info: Zacharias Bobolakis <zb@doc.ic.ac.uk>
  4565. ftp: doc.ic.ac.uk:/computing/programming/languages/pd-ICP-0,90.tar.Z
  4566.  
  4567. LO - Linear Objects.  Concurrent logic programming language based on
  4568. "linear logic", an extension of Horn logic with a new kind of OR-
  4569. concurrency.  "LO and Behold! Concurrent Structured Processes", J. Andreoli
  4570. et al, SIGPLAN Notices 25(10):44-56 (OOPSLA/ECOOP '90) (Oct 1990).
  4571.  
  4572. LogC - C extension ncorporating rule-oriented programming, for AI
  4573. applications.  Production rules are encapsulated into functional components
  4574. called rulesets.  Uses a search network algorithm similar to RETE.  "LogC:
  4575. A Language and Environment for Embedded Rule Based Systems", F. Yulin et
  4576. al, SIGPLAN Notices 27(11):27-32 (Nov 1992).  Version: LogC 1.6.
  4577.  
  4578. Logic Design Language - Language for computer design.  "A System
  4579. Description Language Using Parametric Text Generation", R.H. Williams, TR
  4580. 02.487, IBM San Jose, Aug 1970.
  4581.  
  4582. LOGIN - Integration of logic programming and inheritance.  "LOGIN: A Logic
  4583. Programming Language with Built-In Inheritance", H. Ait-Kaci et al, J Logic
  4584. Programming 3(3):185-215 (1986).
  4585.  
  4586. LOGLAN - Inst Informatics, Warsaw U.  Object-oriented.  "LOGLAN '88 -
  4587. Report on the Programming Language", LNCS 414, Springer, ISBN 3-540-52325-
  4588. 1.
  4589.  
  4590. LOGLISP - Robertson & Sibert, Syracuse 1980.  A Prolog-like language called
  4591. LOGIC, embedded in LISP.  "LOGLISP: An Alternative to Prolog", J. Alan
  4592. Robinson et al in Machine Intelligence 10, D. Michie ed, Ellis Horwood
  4593. 1982.
  4594.  
  4595. LOGO - Developed 1966-1968 by a group at Bolt, Beranek & Newman headed by
  4596. Wally Fuerzeig <fuerzeig@bbn.com> and including Seymour Papert
  4597. <seymour@media.mit.edu>.  A LISP-like language aimed at children and other
  4598. beginning programmers, noted for its "turtle graphics" used to draw
  4599. geometric shapes.
  4600. ftp: anarres.cs.berkeley.edu:pub    Logo interpreters for Mac, Unix, PC, X
  4601.  
  4602. LOGOL - Strings are stored on cyclic lists or 'tapes', which are operated
  4603. upon by finite automata.  J. Mysior et al, "LOGOL, A String manipulation
  4604. Language", in Symbol Manipulations Languages and Techniques, D.G. Bobrow
  4605. ed, N-H 1968, pp.166-177.
  4606.  
  4607. LOLITA - Language for the On-Line Investigation and Transformation of
  4608. Abstractions.  Extension of Culler-Fried system for symbolic math.  "An On-
  4609. line Symbol Manipulation System", F.W. Blackwell, Proc ACM 22nd Natl Conf
  4610. (1967).  Sammet 1969, p.464.
  4611.  
  4612. Lolli - (named for the "lollipop" operator "-o")  Based on linear logic, in
  4613. which clauses can be used exactly once.  All the operators of lambda-
  4614. Prolog plus linear variations.  Implemented in SML/NJ.  Josh Hodas et al,
  4615. "Logic Programming in a Fragment of Intuitionistic Linear Logic",
  4616. Information and Computation, to appear.
  4617. ftp: ftp.cis.upenn.edu:pub/Lolli/Lolli-0.7.tar.Z
  4618.  
  4619. LOOK - Specification language.  "A Look at Algebraic Specifications", S.N.
  4620. Zilles et al, IBM RR, 1982.
  4621.  
  4622. LOOKS - "LOOKS: Knowledge-Representation System for Designing Expert
  4623. Systems in a Logical Programming Framework", F. Mizoguchi, Proc Intl Conf
  4624. 5th Gen Comp Sys, ICOT 1984.
  4625.  
  4626. LOOPN - U Tasmania.  An object-oriented language for simulation of Petri
  4627. nets.
  4628. ftp: ftp.utas.edu.au/departments/computer_science/loopn.tar.Z
  4629.  
  4630. LOOPS - Object-oriented LISP extension, used in development of knowledge-
  4631. based systems.  "The LOOPS Manual", D.G. Bobrow & M. Stefik, Xerox Corp
  4632. 1983.  (See CommonLoops).
  4633.  
  4634. Lore - Object-oriented language for knowledge representation.  "Etude et
  4635. Realisation d'un Language Objet: LORE", Y. Caseau, These, Paris-Sud, Nov
  4636. 1987.
  4637.  
  4638. LOTIS - LOgic, TIming, Sequencing.  Describes a computer via its data flow. 
  4639. Sammet 1969, p.620.
  4640.  
  4641. LOTOS - Specification language based on temporal ordering.  "The Formal
  4642. Description Technique LOTOS", P.H.J. van Eijk et al eds, N-H 1989.
  4643.  
  4644. Lout - J. Kingson <jeff@cs.su.oz.au>  The language embedded in the document
  4645. preparation system lout.
  4646. ftp: uunet.uu.net:tmp/lout.tar.Z
  4647.  
  4648. LPC - ca 1988.  Variant of C used to program the LP MUDs, programmable
  4649. multi-user adventures.
  4650.  
  4651. LPG - 
  4652.  
  4653.   1. Linguaggio Procedure Grafiche (Italian for "Graphical Procedures
  4654. Language").  dott. Gabriele Selmi.  Roughly a cross between FORTRAN and
  4655. APL, with graphical-oriented extensions and several peculiarities. 
  4656. Underlies the products of CAD.LAB Spa.   "Graphical Procedure Language
  4657. User's Guide and Reference Manual", CAD.LAB , Bologna, Italy, 1989, order
  4658. code GO89/9.
  4659.  
  4660.   2. Langage de Programmation Generique.  An applicative language, both
  4661. specification and functional.  Special emphasis on parametrized
  4662. declarations.  "Design and Implementation of a Generic, Logic and
  4663. Functional Programming Language",  D. Bert et al, ESOP 86, LNCS 213,
  4664. Springer 1986.
  4665.  
  4666. LPL - List Programming Language.  LISP-like language with ALGOL-like
  4667. syntax, for IBM 360.  "LPL - LISP Programming Language", F.W. Blair et al,
  4668. RC 3062, IBM TJWRC, Sep 1970.
  4669.  
  4670. LRLTRAN - Lawrence Radiation Laboratory TRANslator.  FORTRAN extension with
  4671. vector arithmetic and dynamic storage, used for scientific work and systems
  4672. programming, including the LTSS OS.  "The LRLTRAN Compiler", S.F.
  4673. Mendicino, CACM 11(11):747-775 (Nov 1969).
  4674.  
  4675. LSL - 
  4676.  
  4677.   1. Larch Shared Language.  An assertion language.  (See Larch).
  4678.  
  4679.   2. Link and Selector Language.  Graphic query language.  "LSL: A Link and
  4680. Selector Language", D.C. Tsichritzis, Proc Intl Conf Management of Data,
  4681. ACM 1976, pp.123-134.
  4682.  
  4683. LSYD - Language for SYstems Development.  PL/I-like language with data
  4684. structure and character extensions.  "Systems Programming Languages", R.D.
  4685. Bergeron et al, in Advances in Computers 1971, A-P.
  4686.  
  4687. LT-2 - Early system on IBM 701.  Listed in CACM 2(5):16 (May 1959).
  4688.  
  4689. LTR - Langage Temps-Reel.  A French predecessor to Ada, Modula-like with a
  4690. set of special-purpose real-time constructs based on an event model. 
  4691. Mentioned in "An Overview of Ada", J.G.P. Barnes, Soft Prac & Exp 10:851-
  4692. 887 (1980).
  4693.  
  4694. LTR2 - 
  4695.  
  4696. LTR3 - Parayre, France.  Saw wide use by French military and avionics. 
  4697. "The LTR3 Reference Manual", A. Parayre, Delegation Generale pour
  4698. l'Armement, France.
  4699.  
  4700. LUCID -
  4701.  
  4702.   1. Early query language, ca. 1965, System Development Corp, Santa Monica,
  4703. CA.  Sammet 1969, p.701.
  4704.  
  4705.   2. Ashcroft & Wadge <wwadge@csr.uvic.ca>, 1981.  A dataflow language
  4706. descended from ISWIM, lazy but first-order.  Statements are regarded as
  4707. equations defining a network of processors and communication lines, through
  4708. which the data flows.   Every data object is thought of as an infinite
  4709. stream of simple values, every function as a filter.  Lucid has no data
  4710. constructors such as arrays or records.  Iteration is simulated with 'is
  4711. current' and 'fby' (concatenation of sequences).  "Lucid, the Dataflow
  4712. Programming Language", W. Wadge, Academic Press 1985.
  4713.  
  4714. Lucinda - Combines Russell-like polymorphism with Linda-like concurrency. 
  4715. Implemented as a threaded interpreter written in C, for a Sun network and a
  4716. Meiko Computing Surface.  "Lucinda - An Overview", P. Butcher, U York
  4717. <paulb@minster.york.ac.uk> et al, SIGPLAN Notices 26(8):90-100 (Aug 1991).
  4718.  
  4719. Lucy - Distributed constraint programming language.  An actor subset of
  4720. Janus.  "Actors as a Special Case of Concurrent Constraint Programming", K.
  4721. Kahn <kahn@parc.xerox.com> et al, SIGPLAN Notices 25(10):57-66 (OOPSLA/
  4722. ECOOP '90) (Oct 1990).
  4723.  
  4724. LUSTRE - Real-time dataflow language for synchronous systems, especially
  4725. automatic control and signal processing.  A Lucid subset, plus timing
  4726. operators and user-defined clocks.  "Outline of a Real-Time Data-Flow
  4727. Language", J.-L. Bergerand et al, Proc IEE-CS Real Time Systems Symp, San
  4728. Diego, IEEE Dec 1985, pp.33-42.  "LUSTRE: A Declarative Language for
  4729. Programming Synchronous Systems", P. Caspi et al, Conf Rec 14th Ann ACM
  4730. Symp on Princ Prog Langs, 1987.
  4731.  
  4732. LYaPAS - (Russian acronym for "Logical Language for the Representation of
  4733. Synthesis Algorithms").  For the URAL-1 computer.  Coded in octal! 
  4734. "LYaPAS: A Programming Language for Logic and Coding Algorithms", M.A.
  4735. Gavrilov et al eds, Academic Press 1969.
  4736.  
  4737. LYNX - U Wisc 1984.  Language for large distributed networks, using remote
  4738. procedure calls.  "The Lynx Distributed Programming Language: Motivation,
  4739. Design and Experience", M.L. Scott, Computer Langs 16:209-233 (1991).
  4740.  
  4741. LYRIC - Language for Your Remote Instruction by Computer.  CAI language
  4742. implemented as a FORTRAN preprocessor.  "Computer Assisted Instruction:
  4743. Specification of Attributes for CAI Programs and Programmers", G.M. Silvern
  4744. et al, Proc ACM 21st Natl Conf (1966).
  4745.  
  4746. M - 
  4747.  
  4748.   1. Alternative name for MUMPS.
  4749.  
  4750.   2. Silicon Compiler Systems.  A C-like language for multilevel hardware
  4751. description.  Currently available in the GDT package from Mentor Graphics.
  4752.  
  4753. M3 - Macro processor, forerunner of M4, for the AP-3 mini.
  4754.  
  4755. M4 - Macro processor for Unix and GCOS.  "The M4 Macro Processor",
  4756. Kernighan & Ritchie, Jul 1977.
  4757. ftp: prep.ai.mit.edu:pub/gnu/m4-1.0.tar.Z
  4758.  
  4759. M5 - A. Dain, U Cincinnati 1992.  Macro processor, a generalization of M4. 
  4760. For Unix and DOS.
  4761. ftp: thor.exe.u.edu:pub/dain/m5
  4762.  
  4763. MAC - Early system on Ferranti Mercury.  Listed in CACM 2(5):16 (May 1959).
  4764.  
  4765. Mac-1 - Assembly language used in Structured Computer Organization, A.S.
  4766. Tanenbaum, 3rd Edition, P-H 1989, Sect. 4.3.  [See Mic-1]
  4767.  
  4768. MAC-360 - ca. 1967.  Solving numerical problems using equation-like input.
  4769. "User's Guide to MAC-360", Charles Stark Draper Lab, Cambridge MA (Aug
  4770. 1973)  Sammet 1969, p.264.
  4771.  
  4772. Macaulay - Mike Stillman <mike@mssun7.msi.cornell.edu> and Dave Bayer
  4773. <bayer@cunixa.columbia.edu> 1977.  Symbolic math package for commutative
  4774. algebra, algebraic geometry, cohomology.
  4775. ftp: zariski.harvard.edu, Version 3 for Sun, Mac and Amiga, source in C
  4776.  
  4777. MACE - Concurrent object-oriented language.[?]
  4778.  
  4779. Machiavelli - Peter Buneman & Atsushi Ohori, U Pennsylvania, 1989.  An
  4780. extension of Standard ML based on orthogonal persistence.  "Database
  4781. Programming in Machiavelli: A Polymorphic Language with Static Type
  4782. Inference", A. Ohori, Proc SIGMOD Conf, ACM, June 1989.
  4783.  
  4784. MACL - Macintosh Allegro CL.
  4785. list: info-macl@cambridge.apple.com
  4786.  
  4787. MACLISP - Project MAC.  Was once one of two main branches of LISP (the
  4788. other being INTERLISP).  In 1981 Common LISP was begun in an effort to
  4789. combine the best features of both.  "MACLISP Reference Manual", D.A. Moon
  4790. <moon@cambridge.apple.com>, TR Project MAC, MIT 1974.
  4791.  
  4792. MACRO - 
  4793.  
  4794.   1. Assembly language for VAX/VMS.
  4795.  
  4796.   2. PL/I-like language with extensions for string processing.  "MACRO: A
  4797. Programming Language", S.R. Greenwood, SIGPLAN Notices 14(9):80-91 (Sep
  4798. 1979).
  4799.  
  4800. Macro SAP - Macro processing modification of SAP.  D.E. Eastwood and D.M.
  4801. McIlroy, unpublished memorandum, Bell Labs 1959.  Led to TRAC.
  4802.  
  4803. MACSYMA - Project MAC's SYmbolic MAnipulator.  Joel Moses
  4804. <moses@larch.lcs.mit.edu> MIT 1969, later Symbolics, Inc.  The first
  4805. comprehensive symbolic math system, written in LISP. "MACSYMA - The Fifth
  4806. Year", J. Moses, SIGSAM Bulletin 8(3) (Aug 1974).  Versions: Symbolics
  4807. Macsyma, DOE Maxima (ANL), Vaxima.
  4808. info: macsyma-service@symbolics.com
  4809. ftp: rascal.ics.utexas.edu:pub/maxima-4-155.tar.Z   DOE Maxima in Common
  4810. LISP
  4811.  
  4812. MAD - 
  4813.  
  4814.   1. Michigan Algorithm Decoder.  Developed at U Michigan by R. Graham,
  4815. Bruce Arden <arden@hopper.ee.rochester.edu> and Bernard Galler
  4816. <Bernard_A._Galler@um.cc.umich.edu>, 1959.  Based on IAL.  For the IBM 704,
  4817. 709 and 7090, later ported to Philco, Univac and CDC machines.  MAD was one
  4818. of the first extensible languages: the user could define his own operators
  4819. and data types.  "Michigan Algorithm Decoder (The MAD Manual)", U Michigan
  4820. Computing Center, 1966.  Sammet 1969, p.205.
  4821.  
  4822.   2. Dataflow language.  "Implementation of Data Structures on a Data Flow
  4823. Computer", D.L. Bowen, Ph.D. Thesis, Victoria U Manchester, Apr 1981.
  4824.  
  4825. Mad/1 - A later, much enhanced version of MAD, for the IBM 360.  Michigan's
  4826. answer to PL/I.
  4827.  
  4828. MADCAP - Math and set problems, for the Maniac II and CDC 6600.  "MADCAP -
  4829. A Scientific Compiler for a Displayed Formula Texbook Language", M.B.
  4830. Wells, CACM 4(1):31-36 (Jan 1961).  Sammet 1969, pp.271-281.
  4831.  
  4832. MADTRAN - Early preprocessor that translated FORTRAN to MAD, for gain in
  4833. speed.
  4834.  
  4835. MAGIC - Early system on Midac computer.  Listed in CACM 2(5):16 (May 1959).
  4836.  
  4837. Magic Paper - Early interactive symbolic math system.  Sammet 1969, p.510.
  4838.  
  4839. Magma2 - Language that allows programmability of the control environment,
  4840. e.g. recursion, backtracking, coroutines, nondeterminism, etc.  "Magma2: A
  4841. Language Oriented Toward Experiments in Control", Franco Turini, ACM TOPLAS
  4842. 6(4):468-486 (Oct 1984).
  4843.  
  4844. MagmaLISP - Predecessor of Magma2.  "MagmaLISP: A Machine Language for
  4845. Artificial Intelligence", C. Mantagero et al, Proc 4th Intl Joint Conf
  4846. Artif Intell, 1975, pp.556-561.
  4847.  
  4848. MAGNUM - Tymshare Inc, late 70's.  Database language for DEC-10's, used
  4849. internally by Tymshare.
  4850.  
  4851. Magritte - J. Gosling.  Constraint language for interadctive graphical
  4852. layout.  Solves its constraints using algebraic transformations. 
  4853. "Algebraic Constraints", J. Gosling, PhD Thesis, TR CS-83-132, CMU, May
  4854. 1983.
  4855.  
  4856. MAINSAIL - MAchine INdependent SAIL.  From XIDAK, Palo Alto CA, (415) 855-
  4857. 9271.
  4858.  
  4859. Make - Language for the Unix file maintenance utility Make.  "Make - A
  4860. Program for Maintaining Computer Programs", A.I. Feldman, TR No 57, Bell
  4861. Labs Apr 1977.
  4862.  
  4863. MAL - Micro Assembly Language - Microprogramming language with high-level
  4864. syntax, used in Structured Computer Organization, A.S. Tanenbaum, 3rd ed,
  4865. P-H 1989, Sect 4.4.  [See Mic-1, Mac-1].
  4866.  
  4867. Manchester Autocode - Predecessor of Mercury Autocode.  "The Programming
  4868. Strategy Used with the Manchester University Mark I Computer", R.A.
  4869. Brooker, Proc IEE 103B Suppl:151-157, 1956.
  4870.  
  4871. Mandala - ICOT, Japan.  A system based on Concurrent Prolog.  "Mandala: A
  4872. Logic Based Knowledge Programming System", K. Furukawa et al, Intl Conf 5th
  4873. Gen Comp Sys 1984.
  4874.  
  4875. MAO - Early symbolic math system.  A. Rom, Celest Mech 1:309-319 (1969).
  4876.  
  4877. MAP - Mathematical Analysis without Programming.  On-line system under CTSS
  4878. for math.  Sammet 1969, p.240.
  4879.  
  4880. Maple - B. Char, K. Geddes, G. Gonnet, M. Monagan & S. Watt, U Waterloo,
  4881. Canada 1980.  Symbolic math system.  Waterloo Maple Software.  Current
  4882. version: Maple V.
  4883. info: wmsi@daisy.waterloo.edu
  4884. list: glabahn@daisy.waterloo.edu
  4885.  
  4886. Marseille Prolog - One of the two main dialects of Prolog, the other being
  4887. Edinburgh Prolog.  The difference is largely syntax.  The original
  4888. Marseille Interpreter (1973) was written in FORTRAN.
  4889.  
  4890. MARSYAS - MARshall SYstem for Aerospace Simulation.  Simulation of large
  4891. physical systems.  "MARSYAS - A Software System for the Digital Simulation
  4892. of Physical Systems", H. Trauboth et al, Proc SJCC, 36 (1970).
  4893.  
  4894. MARY - Norwegian research language, somewhat ALGOL68-like.  No operator
  4895. precedence.  The back cover of the manual bears the (well-hidden) fragment:
  4896. MARY HAD A LITTLE LAMB - COERCION IMPOSSIBLE.
  4897.  
  4898. MAS - Modula-2 Algebra System.  "Modula-2 Algebra System", H. Kredel, Proc
  4899. DISCO 90 Capri, LNCS 429, Springer 1990, pp270-271.
  4900. ftp: alice.fmi.uni-passau.de, for PC, Atari, Amiga
  4901.  
  4902. MASM - Microsoft Assembler for MS-DOS.
  4903.  
  4904. Massey Hope - Massey U, NZ.  Refinement of Hope+C with improved syntax, and
  4905. no stream I/O.
  4906. info: Nigel Perry <N.Perry@massey.ac.nz>
  4907.  
  4908. Matchmaker - A language for specifying and automating the generation of
  4909. multi-lingual interprocess communication interfaces.  MIG is an
  4910. implementation of a subset of Matchmaker that generates C and C++ remote
  4911. procedure call interfaces for interprocess communication between Mach
  4912. tasks.  "MIG - The Mach Interface Generator", R.P. Draves et al, CS CMU, (4
  4913. Aug 1989).
  4914.  
  4915. Mathcad - Symbolic math environment.
  4916.  
  4917. Mathematica - (name suggested by Steve Jobs).  Wolfram Research, 1988. 
  4918. Symbolic math and graphics system.  The language emphasizes rules and
  4919. pattern-matching.  "Mathematica: A System for Doing Mathematics by
  4920. Computer", Stephen Wolfram, A-W 1988.
  4921. ftp: otter.stanford.edu, ftp.ncsa.uiuc.edu
  4922. list: mathgroup-request@yoda.ncsa.uiuc.edu
  4923. info: info@wri.com
  4924.  
  4925. MATHLAB - Symbolic math system, MITRE, 1964.  Later version: MATHLAB 68
  4926. (PDP-6, 1967).  "The Legacy of MATHLAB 68", C. Engelman, Proc 2nd Symp on
  4927. Symbolic and Algebraic Manip, ACM (Mar 1971).  Sammet 1969, p.498.
  4928.  
  4929. MATH-MATIC or MATHMATIC - Alternate name for AT-3.  Early, pre-FORTRAN
  4930. language for UNIVAC I or II.  Sammet 1969.
  4931.  
  4932. Matrix Compiler - Early matrix computations on UNIVAC.  Sammet 1969, p.642.
  4933.  
  4934. MATRIX MATH - Early system on UNIVAC I or II.  Listed in CACM 2(5):16 (May
  4935. 1959).
  4936.  
  4937. mawk - Mike Brennan <brennan@bcsaic.boeing.com> 1991.  An implementation of
  4938. nawk, distributed under GNU license but distinct from GNU's gawk.
  4939. ftp: oxy.edu:public/mawk
  4940.  
  4941. MAXIMOP - "Job Control Languages: MAXIMOP and CAFE", J. Brandon, Proc BCS
  4942. Symp on Job Control Languages--Past Present and Future, NCC, Manchester,
  4943. ENgland 1974.
  4944.  
  4945. MBASIC - Microsoft BASIC.
  4946.  
  4947. MC - "Design and Implementation of a C-Based Language for Distributed Real-
  4948. Time Systems", A. Rizk et al, SIGPLAN Notices 22(6):83-96 (June 1987).
  4949.  
  4950. McG360 - Interactive, similar to PAL[5], for IBM 360.  "McG360 Programmer's
  4951. Guide", RC 2693, IBM TJWRC, Nov 1969.
  4952.  
  4953. MCL - Macintosh Common LISP.
  4954.  
  4955. M-Code - 
  4956.  
  4957.  1) Intermediate code produced by the Modula-2 compiler. [which one?]
  4958.  
  4959.  2) Intermediate language for an SECD-like machine, used by the Concert
  4960. implementation of MultiLISP.
  4961.  
  4962. MCS - Meta Class System.  A portable object-oriented extension of Common
  4963. LISP.
  4964. ftp: gmdzi.gmd.de:pub/lisp/mcs
  4965.  
  4966. MDL - (originally "Muddle").   C. Reeve, C. Hewitt & G. Sussman, MIT ca.
  4967. 1971.  Basically LISP 1.5 with data types and arrays.  Many of its features
  4968. were advanced at the time, and were incorporated into later LISP dialects. 
  4969. In the mid 80's there was an effort to use bytecoding to make the language
  4970. portable.  CLU was first implemented in MDL.  Infocom wrote Zork in MDL,
  4971. and used it as the basis for the ZIL interpreter.  "The MDL Programming
  4972. Language", S.W. Galley et al, Doc SYS.11.01, Project MAC, MIT (Nov 1975). 
  4973. Implementations exist for ITS, TOPS-20, BSD 4.3, Apollo Domain, SunOS and
  4974. A/UX.
  4975.  
  4976. me too - Peter Henderson, 1984.  Functional language for executable
  4977. specifications.  Like LispKit Lisp, but with sets, maps and sequences to
  4978. describe the specification.  "Functional Programming, Formal Specification
  4979. and Rapid Prototyping", IEEE Trans Soft Eng, SE-12(2):241-250 (Feb 1986).
  4980.  
  4981. MELD - Concurrent, object-oriented, dataflow, modular and fault-tolerant! 
  4982. Comparable to SR.  "MELDing Multiple Granularities of Parallelism", G.
  4983. Kaiser et al, ECOOP '89, pp.147-166, Cambridge U Press 1989.
  4984.  
  4985. MeldC - Columbia U, 1990.  A C-based concurrent object-oriented
  4986. coordination language built on a reflective architecture.  A redesign of
  4987. MELD.  Version 2.0 or Sun4's and DECstations.
  4988. info: meldc@cs.columbia.edu
  4989.  
  4990. Melinda - "Melinda: Linda with Multiple Tuple Spaces", S. Hupfer,
  4991. <hupfer-susanne@yale.edu> YALEU/DCS/RR-766, Yale U Feb 1990.
  4992.  
  4993. Mentat - U Virginia.  Object-oriented distributed language, an extension of
  4994. C++, portable to a variety of MIMD architectures.  "Mentat: An Object-
  4995. Oriented Macro Data Flow System", A. Grimshaw <grimshaw@cs.virginia.edu> et
  4996. al, SIGPLAN Notices 22(12):35-47 (Dec 1987) (OOPSLA '87).  Available now
  4997. for Sun 3 & 4 and iPSC/2, and soon Mach, iPSC860, RS/6000 and Iris.
  4998. info: mentat@uvacs.cs.virginia.edu
  4999.  
  5000. MENTOR - CAI language.  "Computer Systems for Teaching Complex Concepts",
  5001. Report 1742, BBN, Mar 1969.
  5002.  
  5003. MENYMA/S - "A Message Oriented Language for System Applications", A. Koch
  5004. et al, Proc 3rd Intl Conf Distrib Comp Sys, IEEE 1982, pp.824-832.
  5005.  
  5006. Mercury Autocode - Autocode for the Ferranti Mercury machine.  (See
  5007. Autocode).
  5008.  
  5009. Mesa - Xerox PARC, ca 1977.  System and application programming for
  5010. proprietary hardware: Alto, Dolphin, Dorado and Dandelion.  Pascal-like
  5011. syntax.  Its modules with separately compilable definition and
  5012. implementation parts directly led to Wirth's design for Modula.  Threads,
  5013. coroutines (fork/join), exceptions, and monitors.  Type checking may be
  5014. disabled.  Originally for internal use, Mesa was released to a few
  5015. universitites in 1985.  "Mesa Language Manual", J.G. Mitchell et al, Xerox
  5016. PARC, CSL-79-3 (Apr 1979).  "Early Experience with Mesa", Geschke et al,
  5017. CACM 20(8):540-552 (Aug 1977).
  5018.  
  5019. META - CDC, ca 1977.  Assembly language for the CYBER 200.  CDC Pub
  5020. 60256020.
  5021.  
  5022. META 5 - Early syntax-directed compiler-compiler, used for translating one
  5023. high-level language to another.  "META 5: A Tool to Manipulate Strings of
  5024. Data", D.K. Oppenheim et al, Proc 21st Natl Conf, ACM 1966.  Sammet 1969,
  5025. p.638.  Versions: META II, META-3.
  5026.  
  5027. Meta-II - An early compiler-compiler.  "Meta-II: a Syntax Oriented Compiler
  5028. Writing Language", V. Schorre, Proc 19th ACM Natl Conf 1964.
  5029.  
  5030. Meta-IV - "The Vienna Development Method: The Meta Language", D. Bjorner et
  5031. al, eds, LNCS 61 Springer 1978.
  5032.  
  5033. Meta-Crystal - A language for transformations of Crystal programs. 
  5034. Implemented in T.  "Meta-Crystal- A Metalanguage for Parallel-Program
  5035. Optimization", J.A. Yang et al, TR YALEU/DCS/TR-786, Yale Apr 1990.  (See
  5036. Crystal).
  5037.  
  5038. METAFONT - Knuth.  A system for the design of raster-based alphabets. 
  5039. Companion to TeX.  "The METAFONT Book," Donald Knuth, A-W 1986.  Version
  5040. 2.0, March 1990.
  5041.  
  5042. Meta-Vlisp - E. St.James <esj@litp.ibp.fr> France.  A Lisp dialect with
  5043. many innovations.
  5044.  
  5045. METEOR - Successor to COMIT.  "METEOR - A List Interpreter for String
  5046. Transformation", D.G. Bobrow in The Programming Language LISP and its
  5047. Interpretation, E.D. and D.G. Bobrow eds, 1964.
  5048.  
  5049. Methods - Digitalk, ca 1985.  Line-oriented Smalltalk for PC's, predecessor
  5050. of Smalltalk/V.
  5051.  
  5052. MHDL - 
  5053.  
  5054.   1. MIMIC Hardware Description Language.
  5055.  
  5056. From billk@cs.ukans.edu Fri Feb  5 05:42:34 1993
  5057. Received: from mars.cs.ukans.edu by cogsci.Berkeley.EDU (5.63/1.29)
  5058.     id AA25996; Fri, 5 Feb 93 05:42:31 -0800
  5059. From: Bill Kinnersley <billk@cs.ukans.edu>
  5060. Date: Fri, 5 Feb 1993 07:41:17 CST
  5061. X-Mailer: Mail User's Shell (7.2.5 10/14/92)
  5062. To: muir@cogsci.Berkeley.EDU
  5063. Subject: Part 6
  5064. Message-Id:  <9302050741.aa07608@cs.ukans.edu>
  5065.  
  5066.  
  5067.   2. Microwave Hardware Description Language.  Incorporates Haskell 1.2. 
  5068. Intermetrics.
  5069. info: David Barton <dlb@hudson.wash.inmet.com>
  5070.  
  5071. Mic-1, Mic-2 - Microprogramming languages, used in Structured Computer
  5072. Organization, A.S. Tanenbaum, 3rd ed, P-H 1989, Sect 4.4, 4.5.  [See Mac-
  5073. 1].
  5074.  
  5075. microPLANNER - G.J. Sussman et al, MIT.  Subset of PLANNER, implemented in
  5076. LISP.  Superseded by Conniver.  Important features: goal-oriented, pattern-
  5077. directed procedure invocation, embedded knowledge base, automatic
  5078. backtracking.  "microPLANNER Reference Manual", G.J. Sussman et al, AI Memo
  5079. 203, MIT AI Lab, 1970.
  5080.  
  5081. MIDAS - Digital simulation language.  Sammet 1969, p.627.
  5082.  
  5083. MIIS - ("Meese").  Interpreted.  One-letter keywords.  Similar to MUMPS?
  5084.  
  5085. MILITRAN - Discrete simulation for military applications.  Sammet 1969,
  5086. p.657.
  5087.  
  5088. MIMIC - J.H. Andrews, NIH 1967.  Early language for solving engineering
  5089. problems such as differential equations that would otherwise have been done
  5090. on an analog computer.  "MIMIC, An Alternative Programming Language for
  5091. Industrial Dynamics, N.D. Peterson, Socio-Econ Plan Sci. 6, Pergamon 1972.
  5092.  
  5093. MIMOLA - Operational hardware specification language.  "A Retargetable
  5094. Compiler for a High-Level Microprogramming Language", 17th Ann Workshop on
  5095. Microprogramming, P. Marwedel, IEEE 1984, pp.267-274.
  5096.  
  5097. Mini-ML - "A Simple Applicative Language: Mini-ML", D. Clement et al, Proc
  5098. 1986 ACM Conf on LISP and Functional Prog, (Aug 1986).
  5099.  
  5100. MINITAB II - Interactive solution of small statistical problems.  "MINITAB
  5101. Student Handbook", T.A. Ryan et al, Duxbury Press 1976.
  5102.  
  5103. MINT - Mint Is Not TRAC.  Version of TRAC used as the extension language in
  5104. the Freemacs editor.
  5105. ftp: sun.soe.clarkson.edu:pub/freemacs
  5106.  
  5107. Miracula - Stefan Kahrs <smk@ed.ac.uk>, LFCS.  An implementation of a
  5108. subset of Miranda, no modules or files.  Can be interactively switched
  5109. between eager and lazy evaluation.  Portable source in C from the author.
  5110.  
  5111. Miranda - (latin for "admirable", also the heroine of Shakespeare's
  5112. Tempest).  David A. Turner <dat@ukc.ac.uk>, U Kent early 1980's.  Lazy,
  5113. purely functional.  A commercial descendant of SASL and KRC, with ML's type
  5114. system.  Terse syntax using the offside rule for indentation.  Type
  5115. declarations are optional.  Nested pattern-matching, list comprehensions,
  5116. modules.  Sections rather than lambda abstractions.  User types are
  5117. algebraic, may be constrained by laws.  Implemented by SKI reduction.  The
  5118. KAOS operating system is written entirely in Miranda.  "Miranda: A Non
  5119. Strict Functional Language with Polymorphic Types", D.A. Turner, in
  5120. Functional Programming Languages and Computer Architecture, LNCS 201,
  5121. Springer 1985.  "Functional Programming with Miranda", Holyer, Pitman Press
  5122. 0-273-03453-7.  (See Miracula, Orwell).
  5123. info: Research Software Ltd, or mira-request@ukc.ac.uk
  5124.  
  5125. MIRFAC - Mathematics in Recognizable Form Automatically Compiled.  Early
  5126. interactive system resembling BASIC, typewriter output with special math
  5127. symbols.  Sammet 1969, pp.281-284.
  5128.  
  5129. MISHAP - Early system on IBM 1103 or 1103A.  Listed in CACM 2(5):16, (May
  5130. 1959).
  5131.  
  5132. MITILAC - Early system on IBM 650.  Listed in CACM 2(5):16 (May 1959).
  5133.  
  5134. MIXAL - MIX Assembly Language.  Assembly language for Knuth's hypothetical
  5135. MIX machine, used in The Art of Computer Programming v.1, Donald Knuth,
  5136. A-W 1969.
  5137.  
  5138. MJS - Early system on UNIVAC I or II.  Listed in CACM 2(5):16 (May 1959).
  5139.  
  5140. ML -
  5141.  
  5142.   1.  Manipulator Language.  IBM language for handling robots.
  5143.  
  5144.   2.  Meta Language.  R. Milner <rm@lfcs.edinburgh.ac.uk> et al, 1973.  A
  5145. strict higher-order functional language with statically-checked polymorphic
  5146. types, garbage collection and a formal semantics.  It began as the
  5147. metalanguage for the Edinburgh LCF proof assistant.  (LCF="Logic for
  5148. Computable Functions")  "A Metalanguage for Interactive Proof in LCF",
  5149. M.J.C. Gordon et al, 5th POPL, ACM 1978.  (See SML).  LCF ML was
  5150. implemented in Stanford LISP.  Cardelli's implementation (1981) in Pascal,
  5151. using the FAM.
  5152.  
  5153. MLAB - Modeling LABoratory.  Interactive mathematical modeling.  "MLAB, An
  5154. On-Line Modeling Laboratory", NIH (Mar 1975).
  5155.  
  5156. ML/I - Early macro translating system.  P.J. Brown, CACM 10(10):618-623,
  5157. (Oct 1967).
  5158.  
  5159. MLISP - 
  5160.  
  5161.   1. M-expression LISP.  J. McCarthy, 1962.  The original "meta-language"
  5162. syntax of LISP, intended for external use in place of the parenthesized S-
  5163. expression syntax.  "LISP 1.5 Programmer's Manual", J. McCarthy et al, MIT
  5164. Press 1962.
  5165.  
  5166.   2. Meta-LISP.  D.C. Smith & H. Enea.  LISP variant with ALGOL-like
  5167. syntax.  Not just a surface syntax, a full language.  "MLISP", D.C. Smith,
  5168. TR CS-179, CS Dept, Stanford (Oct 1970).  Version: MLISP2.
  5169.  
  5170.   3. A hybrid of M-expression LISP and Scheme.  "M-LISP: Its Natural
  5171. Semantics and Equational Logic", R. Muller, SIGPLAN Notices 26(9):234-242
  5172. (Sept 1991) (PEPM '91).
  5173.  
  5174. ML-Linda - U Edinburgh, under development.
  5175.  
  5176. ML Threads - Greg Morrisett <jgmorris@cs.cmu.edu>.  SML/NJ with mutual
  5177. exclusion primitives similar to those in Modula-2+ and Mesa.  Lightweight
  5178. threads are created using 'fork'.  They are pre-emptively scheduled, and
  5179. communicate via shared memory which can be protected by a 'mutex'
  5180. (monitor).  "Adding Threads to Standard ML", E. Cooper et al, CMU-CS-90-
  5181. 186, CMU Dec 1990. Implementations for 68020, SPARC and MIPS, and also VAX-
  5182.  and MIPS-based multiprocessors.
  5183.  
  5184. Mma - R. Fateman, 1991.  A fast Mathematica-like system, in Allegro CL.
  5185. ftp: peoplesparc.berkeley.edu:pub/mma.tar.Z
  5186.  
  5187. MOBSSL-UAF - Merritt and Miller's Own Block-Structured Simulation
  5188. Language-Unpronounceable Acronym For.  Interactive continuous simulations. 
  5189. "MOBSSL - An Augmented Block Structured Continuous System Simulation
  5190. Language for Digital and Hybrid Computers", M.J. Merritt et al, Proc FJCC
  5191. 35, AFIPS (Fall 1969).
  5192.  
  5193. Mock Lisp - The LISP used by the Gosling Emacs editor.
  5194.  
  5195. MODCAL - Version of HP-PASCAL enhanced with system programming constructs,
  5196. used internally by HP.
  5197.  
  5198. Mode - Object-oriented.  "The Programming Language Mode: Language
  5199. Definition and User Guide", J. Vihavainen, C-1987-50, U Helsinki, 1987.
  5200.  
  5201. MODEF - Pascal-like language with polymorphism and data abstraction. 
  5202. "Definition of the Programming Language MODEF", J. Steensgard-Madsen et al,
  5203. SIGPLAN Notices 19(2):92-110 (Feb 1984).
  5204.  
  5205. MODEL - Pascal-like language with extensions for large-scale system
  5206. programming and interface with FORTRAN applications.  Generic procedures,
  5207. and a "static" macro-like approach to data abstraction.  Produced P-code. 
  5208. Used to implement DEMOS operating system on Cray-1.  "A Manual for the
  5209. MODEL Programming Language", J.B. Morris, Los Alamos 1976.
  5210.  
  5211. MODSIM II - 1986.  Object-oriented modular language for discrete
  5212. simulation, with multiple inheritance, strong typing, integrated 2D and 3D
  5213. graphics.  Compiles to C.  CACI, La Jolla, (619) 457-9681.
  5214. list: palmer@world.std.com
  5215.  
  5216. Modula - MODUlar LAnguage.  Wirth, 1977.  Predecessor of Modula-2, more
  5217. oriented towards concurrent programming but otherwise quite similar. 
  5218. "Modula - A Language for Modular Multiprogramming", N. Wirth, Soft Prac &
  5219. Exp 7(1):3-35 (Jan 1977).
  5220.  
  5221. Modula-2 - Wirth, ETH 1978.  Developed as the system language for the
  5222. Lilith workstation.  The central concept is the module which may be used to
  5223. encapsulate a set of related subprograms and data structures, and restrict
  5224. their visibility from other portions of the program.  Each module has a
  5225. definition part giving the interface, and an implementation part.  The
  5226. language provides limited single-processor concurrency (monitors,
  5227. coroutines and explicit transfer of control) and hardware access (absolute
  5228. addresses and interrupts).  "Programming in Modula-2", N. Wirth, Springer
  5229. 1985.
  5230. ftp:gatekeeper.dec.com:.1/DEC/Modula-2/m2.tar.Z
  5231.  
  5232. Modula-2* - M. Philippsen <philipp@ira.uka.de>, U Karlsruhe.  Modula-2
  5233. extension.  Uses a superset of data parallelism, allowing both synchronous
  5234. and asynchronous programs, both SIMD and MIMD.  Parallelism may be nested
  5235. to any depth.  Version for MasPar and simulator for SPARC.
  5236. ftp: iraun1.ira.uka.de:pub/programming/modula2star
  5237.  
  5238. Modula-2+ - DEC SRC, Palo Alto CA.  Exceptions and threads.  "Extending
  5239. Modula-2 to Build Large, Integrated Systems", P. Rovner, IEEE Software
  5240. 3(6):46-57 (Nov 1986).
  5241.  
  5242. Modula-3 - 1988.  A descendant of Modula-2+ and Cedar, designed for safety. 
  5243. Objects, threads, exceptions and garbage collection.  Modules are
  5244. explicitly safe or unsafe.  As in Mesa, any set of variables can be
  5245. monitored.  "Modula-3 Report", Luca Cardelli et al, TR 52, DEC SRC, and
  5246. Olivetti Research Center, Aug 1988.  "System Programming with Modula-3",
  5247. Greg Nelson ed, P-H 1991, ISBN 0-13-590464-1.  Version: SRC Modula-3 V1.5.
  5248. ftp: gatekeeper.dec.com
  5249. uucp: osu-cis
  5250.  
  5251. Modula-P - "Modula-P: A Language for Parallel Programming Definition and
  5252. Implementation on a Transputer Network", R. Hoffart et al, IEEE Conf Comp
  5253. Langs 1992.
  5254.  
  5255. Modula-Prolog - Adds a Prolog layer to Modula-2.  "Modula-Prolog: A
  5256. Software Development Tool", C. Muller IEEE Software pp.39-45 (Nov 1986).
  5257.  
  5258. Modula/R - Modula with relational database constructs added.  LIDAS Group
  5259. (J. Koch, M. Mall, P. Putfarken, M. Reimer, J.W. Schmidt, C.A. Zehnder)
  5260. "Modula/R Report", LIDAS Memo 091-83, ETH Zurich, Sep 1983.
  5261.  
  5262. Modular Prolog - An extension of SB-Prolog (version 3.1) extended with ML-
  5263. style modules.  For Sun-4.
  5264. ftp: ftp.dcs.ed.ac.uk:/pub/dts/mod-prolog.tar.Z
  5265.  
  5266. Modulex - Based on Modula-2.  Mentioned by M.P. Atkinson & J.W. Schmidt in
  5267. a tutorial in Zurich, 1989.
  5268.  
  5269. MooZ - Object-oriented extension of Z.  "Object Orientation in Z", S.
  5270. Stepney et al eds, Springer 1992.
  5271.  
  5272. MOPS - Michael Hore.  A derivative of Neon.
  5273.  
  5274. MORAL - Mentioned in "An Overview of Ada", J.G.P. Barnes, Soft Prac & Exp
  5275. 10:851-887 (1980).
  5276.  
  5277. MORTRAN - A public domain FORTRAN preprocessor for structured programming.
  5278.  
  5279. Mouse - Peter Grogono, 1975.  A mighty small macro language.  "Mouse, A
  5280. Language for Microcomputers", P. Grogono <grogono@concour.cs.concordia.ca>
  5281. Petrocelli Books, 1983.
  5282.  
  5283. Moxie - Language for real-time computer music synthesis, written in XPL. 
  5284. "Moxie: A Language for Computer Music Performance", D. Collinge, Proc Intl
  5285. Computer Music Conf, Computer Music Assoc 1984, pp.217-220.
  5286.  
  5287. MP-1 - Assembly language for the MasPar machine.
  5288.  
  5289. MPL - 
  5290.  
  5291.   1. Early possible name for PL/I.  Sammet 1969, p.542.
  5292.  
  5293.   2. MasPar.  A data-parallel version of C.
  5294.  
  5295.   3. Motorola Programming Language.  A low-level PL/I-like language,
  5296. similar to PL/M, but for the Motorola 6800.
  5297.  
  5298.   4. MicroProgramming Language.  Simple language for microprogramming. 
  5299. Statements on the same line represent register transfers caused by one
  5300. microinstruction, and are executed in parallel.  "Structured Computer
  5301. Organization", A.S. Tanenbaum, First Edition, P-H 1976. (replaced in later
  5302. editions by Mic-1)
  5303.  
  5304. MPL II - Burroughs VMS MPL II Language Reference Manual.
  5305.  
  5306. MPPL - Early possible name for PL/I.  Sammet 1969, p.542.
  5307.  
  5308. M-Prolog - 
  5309.  
  5310.   1. Marseille Prolog.
  5311.  
  5312.   2. An extension to Prolog involving modules.  "The MProlog System", J.
  5313. Bendl et al, Proc Logic Prog Workshop, 1980.
  5314.  
  5315. MPS III - Solving matrices and producing reports.  "MPS III DATAFORM User
  5316. Manual", Management Science Systems (1976).
  5317.  
  5318. MPSX - Mathematical Programming System Extended.  Solution strategy for
  5319. mathematical programming.  "Mathematical Programming System Extended (MPSX)
  5320. Control Language User's Manual", SH20-0932, IBM.  Sammet 1978.
  5321.  
  5322. MRS - An integration of logic programming into LISP.  "A Modifiable
  5323. Representation System", M. Genesereth et al, HPP 80-22, CS Dept Stanford U
  5324. 1980.
  5325.  
  5326. MSG.84 - "Analysis and Design in MSG.84: Formalizing Functional
  5327. Specifications", V. Berzins et al IEEE Trans Soft Eng SE-11(8):657-670 (Aug
  5328. 1985).
  5329.  
  5330. Muddle - Original name of MDL.
  5331.  
  5332. muFP - Functional language for hardware design, predecessor to Ruby.
  5333.  
  5334. Mul-T - An implementation of Multilisp built on T, for the Encore Multimax. 
  5335. "Mul-T: A High-Performance Parallel Lisp", SIGPLAN Notices 24(7):81-90 (Jul
  5336. 1989).
  5337.  
  5338. multiC - Wavetracer.  A data-parallel version of C.
  5339.  
  5340. MultiLisp - Parallel extension of Scheme, with explicit concurrency.  The
  5341. form (future X) immediately returns a 'future', and creates a task to
  5342. evaluate X.  When the evaluation is complete, the future is resolved to be
  5343. the value.  "MultiLisp: A Language for Concurrent Symbolic Computation", R.
  5344. Halstead, TOPLAS pp.501-538 (Oct 1985).
  5345.  
  5346. MultiScheme - An implementation of Multilisp built on MIT's C-Scheme, for
  5347. the BBN Butterfly.  "MultiScheme: A Paralled Processing System Based on MIT
  5348. Scheme", J. Miller, TR-402, MIT LCS, Sept 1987.
  5349.  
  5350. MUMPS - Massachusetts General Hospital Utility Multi-Programming System.  A
  5351. database-oriented OS and the language that goes with it.  Used originally
  5352. for medical records.  Only data type is the character string.  Current
  5353. versions for IBM RT and R6000, DSM (Digital Standard Mumps) for DEC,
  5354. Datatree MUMPS for IBM PC, Unix MUMPS from PFCS <mumps@pfcs.com>.  "MUMPS
  5355. Language Standard", ANS X11.1-1977.  MUMPS User's Group, Box 208, Bedford
  5356. MA 01730.
  5357. list: MUMPS-L@UGA.BITNET.
  5358.  
  5359. MU-Prolog - L. Naish, U Melbourne 1982.  Prolog with 'wait' declarations
  5360. for coroutining.  "Negation and Control in Prolog", L. Naish, TR 85/12, U
  5361. Melbourne (1985).  (See NU-Prolog).
  5362.  
  5363. MuSimp - LISP variant used as the programming language for the PC symbolic
  5364. math package MuMath.
  5365.  
  5366. Muse - OR-parallel logic programming.
  5367.  
  5368. Music - Bell Labs, 60's.  A series of early languages for musical sound
  5369. synthesis.  Versions: Music I through Music V.  "An Acoustical Compiler for
  5370. Music and Psychological Stimuli", M.V. Mathews, Bell Sys Tech J 40 (1961).
  5371.  
  5372. MUSL - Manchester University Systems Language.
  5373.  
  5374. MYSTIC - Early system on IBM 704, IBM 650, IBM 1103 and 1103A.  Listed in
  5375. CACM 2(5):16 (May 1959).
  5376.  
  5377. NASTRAN - NAsa STRess ANalysis program.  Large stress analysis problems. 
  5378. "The NASTRAN User's Manual", SP-222(C3), NASA.
  5379.  
  5380. Napier - Atkinson & Morrison, St Andrews U; design began ca. 1985, first
  5381. implementation Napier88, 1988.  Based on orthogonal persistence, permits
  5382. definition and manipulation of namespaces.  "The Napier88 Reference
  5383. Manual", R. Morrison et al, CS Depts St Andrews U and U Glasgow, Persistent
  5384. Programming Research Report PPRR-77-89, 1989.
  5385.  
  5386. NAPLPS - North American Presentation-Level-Protocol Syntax.  Language for
  5387. sending text and graphics over communication lines.  Used by videotex
  5388. systems.
  5389.  
  5390. NAPSS - Numerical Analysis Problem Solving System.  Purdue ca. 1965. 
  5391. "NAPSS - A Numerical Analysis Problem Solving System", J.R. Rice et al,
  5392. Proc ACM 21st Natl Conf, 1966.  Sammet 1969, p.299.
  5393.  
  5394. NASTRAN - Engineering language, listed [?] 1976.
  5395.  
  5396. NATURAL - Integrated 4GL used by the database system ADABAS.  Menu-driven
  5397. version: SUPER/NATURAL.
  5398.  
  5399. Natural English - Used to mean programming in normal, spoken English. 
  5400. Sammet 1969, p.768.
  5401.  
  5402. Nawk - New AWK.  AT&T.  Pattern scanning and processing language.  An
  5403. enhanced version of AWK, with dynamic regular expressions, additional
  5404. built-ins and operators, and user-defined functions.
  5405.  
  5406. NB - ("New B"?)  Original name of C.
  5407.  
  5408. NDL- Network Definition Language.  Used to program the DCP (Data
  5409. Communications Processor) on Burroughs Large System.  Version: NDL II.
  5410.  
  5411. Nebula - ICL.  Early business-oriented language for Ferranti Orion
  5412. computer.  "NEBULA - A Programming Language for Data Processing", T.G.
  5413. Braunholtz et al, Computer J 4(3):197-201 (1961).
  5414.  
  5415. NELIAC - Navy Electronics Laboratory International ALGOL Compiler.  1958-
  5416. 1959.  Numeric and logical computations, based on IAL.  "Neliac - A Dialect
  5417. of Algol", H.D. Huskey et al, CACM 3(8):463-468 (Aug 1960).  Version:  BC
  5418. NELIAC.
  5419.  
  5420. Neon - Charles Duff.  An object-oriented extension of FORTH, for the Mac. 
  5421. Inheritance, SANE floating point, system classes and objects for Mac
  5422. interfacing, overlays.  Sold by Kriya Systems, 1985-1988.  Modified, made
  5423. PD and renamed Yerk.
  5424.  
  5425. NETL - Semantic network language, for connectionist architectures.
  5426.  
  5427. NEWP - NEW Programming language.  Replaced ESPOL on Burroughs Large System.
  5428.  
  5429. NewsClip - Clarinet article filter language.
  5430.  
  5431. Newspeak - J.K. Foderaro.  Inspired by Scratchpad.  "The Design of a
  5432. Language for Algebraic Computation", Ph.D. Thesis, UC Berkeley, 1983.
  5433.  
  5434. Newsqueak - "Newsqueak: A Language for Communicating with Mice", R. Pike
  5435. CSTR143, Bell Labs (March 1989).
  5436.  
  5437. Newton - ALGOL-like language used for undergraduate teaching at Federal
  5438. Tech U Lausanne (EPFL).  "Programming in Newton", Wuetrich and Menu, EPFL
  5439. 1982.
  5440.  
  5441. Nexpert Object - Expert system.
  5442.  
  5443. NFQL - "NFQL: The Natural Forms Query Language", D. Embley, Trans Database
  5444. Sys 14(2):168-211 (June 1989).
  5445.  
  5446. NGL - Dialect of IGL.
  5447.  
  5448. NIAL - Nested Interactive Array Language.  Queen's U, Canada.  High-level
  5449. array-oriented language, based on Array Theory as developed by Trenchard
  5450. More Jr.  (Papers on this subject are available from the IBM Cambridge
  5451. Scientific Center, Cambridge MA.)  "Programming Styles in NIAL", M.A.
  5452. Jenkins et al, IEEE Software 3(1):46-55 (Jan 1986).  (See Q'NIAL).
  5453.  
  5454. NICOL I - 
  5455.  
  5456.   1. Small subset of PL/I by (Massachusetts) Computer Assoc, ca. 1965. 
  5457. Version: NICOL II (1967).  Sammet 1969, p.542.
  5458.  
  5459.   2. ICL, 1968. [same as 1?]
  5460.  
  5461. NIKL - Frame language.  "Recent Developments in NIKL", T.R. Kaczmarek et
  5462. al, Proc AAAI-86, 1986.
  5463.  
  5464. NIL -
  5465.  
  5466.   1. A forerunner of Common LISP.  "NIL: A Perspective", Jon L. White,
  5467. MACSYMA Users' Conf Proc, 1979.
  5468.  
  5469.   2. Network Implementation Language.  Strom & Yemini, TJWRC, IBM. 
  5470. Implementation of complex networking protocols in a modular fashion.  "NIL:
  5471. An Integrated Language and System for Distributed Programming", R. Strom et
  5472. al, SIGPLAN Notices 18(6):73-82 (June 1983).
  5473.  
  5474. NJCL - Network Job Control Language.  "NJCL - A Network Job Control
  5475. Language", J. du Masle et al, IFIP Congress 1974.
  5476.  
  5477. Noddy - A simple (hence the name) language to handle text and interaction
  5478. on the Memotech home computer.  Has died with the machine.
  5479.  
  5480. nML - Specification language for instruction sets, based on attribute
  5481. grammars, for back-end generators.  "The nML Machine Description
  5482. Formalism", M. Freericks <mfx@cs.tu-berlin.de> TR TU Berlin, FB20, Bericht
  5483. 1991/15.
  5484.  
  5485. NOMAD - Database language.  "NOMAD Reference Manual", Form 1004, National
  5486. CSS Inc (Dec 1976).  Version: NOMAD2, Must Software Intl.
  5487. list: NOMAD2-L@TAMVM1.BITNET
  5488.  
  5489. Nonpareil - One of five pedagogical languages based on Markov algorithms,
  5490. used in "Nonpareil, a Machine Level Machine Independent Language for the
  5491. Study of Semantics", B. Higman, ULICS Intl Report No ICSI 170, U London
  5492. (1968).  (cf. Brilliant, Diamond, Pearl[3], Ruby[2]).
  5493.  
  5494. NORC COMPILER - Early system on NORC machine.  Listed in CACM 2(5):16 (May
  5495. 1959).
  5496.  
  5497. NORD PL - Intermediate language for Norsk Data computers.  Sintran III (OS
  5498. of the ND 10, late 70's) was written in NORD PL.  "NORD PL User's Guide",
  5499. ND-60.047.03.
  5500.  
  5501. Nother - Parallel symbolic math.
  5502. info: karhu@cs.umu.se
  5503.  
  5504. NPL -
  5505.  
  5506.   1. New Programming Language.  IBM's original (temporary) name for PL/I,
  5507. changed due to conflict with England's "National Physical Laboratory."  MPL
  5508. and MPPL were considered before settling on PL/I.  Sammet 1969, p.542.
  5509.  
  5510.   2. Burstall, 1977.  A predecessor of HOPE.  Pattern matching and set
  5511. comprehensions.
  5512.  
  5513.   3. NonProcedural Language.  1980.  A relational database language.  "An
  5514. Introduction to Nonprocedural Languages Using NPL", T.D. Truitt et al,
  5515. McGraw-Hill 1983.  Versions for Apple II, MS-DOS.
  5516.  
  5517. NPPL - Network Picture Processing Language.  Interactive language for
  5518. manipulation of digraphs.  "A Graph Manipulator for On-line Network Picture
  5519. Processing", H.A. DiGiulio, Proc FJCC 35 (1969).
  5520.  
  5521. N-Prolog - Prolog extended with explicit negation.  Dov Gabbay, J Logic
  5522. Programming.
  5523.  
  5524. Nqthm - Language[?] used in the Boyer-Moore theorem prover.  "Proving
  5525. Theorems About LISP Functions", R.S. Boyer et al JACM 22(1):129-144 (Jan
  5526. 1975).
  5527.  
  5528. Nroff - Text formatting language/interpreter, based on Unix roff.  (See
  5529. Troff, Groff.)
  5530.  
  5531. NUCLEOL - List processing language, influenced by EOL.  J. Nievergelt,
  5532. Computer J 13(3) (Aug 1970).
  5533.  
  5534. Nuprl - (pronounced "new pearl")  Nearly Ultimate PRL.  Interactive
  5535. creation of formal mathematics, including definitions and proofs.  An
  5536. extremely rich type system, including dependent functions, products, sets,
  5537. quotients and universes.  Types are first-class citizens.  Built on Franz
  5538. Lisp and Edinburgh ML.  "Implementing Mathematics in the Nuprl Proof
  5539. Development System", R.L. Constable et al, P-H 1986.
  5540.  
  5541. NU-Prolog - L. Naish, U Melbourne.  A Prolog with 'when' declarations, the
  5542. successor to MU-Prolog.  Type-checked.  "NU-Prolog Reference Manual -
  5543. Version 1.3", J.A. Thom et al eds, TR 86/10, U Melbourne (1988).  Available
  5544. (but not free).
  5545. info: jas@mulga.oz.au
  5546.  
  5547. NYAP - Early system on IBM 704.  Listed in CACM 2(5):16 (May 1959).
  5548.  
  5549. NYU OMNIFAX - Early system on UNIVAC I or II.  Listed in CACM 2(5):16 (May
  5550. 1959).
  5551.  
  5552. O2 - ("Object-Oriented").  Object-oriented database language used in the
  5553. Altair project.  Implemented as an interpreter.  GIP Altair, Versailles,
  5554. France.  Francois Bancilhon et al, in Advances in Object-Oriented Database
  5555. Systems, K.R. Dittrich ed, LNCS 334, Springer 1988.  (See CO2).
  5556.  
  5557. Oaklisp - K. Lang and B. Perlmutter.  A portable object-oriented Scheme,
  5558. syntactically a Scheme superset.  Based on generic operations rather than
  5559. functions.  Anonymous classes.  "Oaklisp: An Object-Oriented Scheme with
  5560. First-Class Types", K. Lang et al, SIGPLAN Notices 21(11):30-37 (Nov 1986)
  5561. (OOPSLA '86).
  5562. ftp: f.gp.cs.cmu.edu:usr/bap/oak/ftpable
  5563.      ux1.cso.uiuc.edu:pub/amiga/fish/ff519 for Amiga
  5564.  
  5565. OBE - Office By Example.  Moshe Zloof, IBM, early 1980's.  Sequel to QBE,
  5566. descriptions published but apparently never implemented.
  5567.  
  5568. Oberon - Wirth, 1988.  A descendant of Modula-2 eliminating many things:
  5569. variant records, enumeration types, subranges, lower array indices and
  5570. 'for' loops.  Additions are extensible record types, multidimensional open
  5571. arrays and garbage collection.  "The Programming Language Oberon", N.
  5572. Wirth, Soft Prac & Exp 18(7):671-690 (July 1988).
  5573. ftp: neptune.inf.ethz.ch for MacII, MS-DOS
  5574.      wuarchive.wustl.edu:/mirrors/msdos/pgmutl/oberonm11.zip for MS-DOS
  5575.      ux1.cso.uiuc.edu:pub/amiga/fish/ff380 for Amiga
  5576.  
  5577. Oberon-2 - H. Moessenboeck, 1991.  A superset of Oberon-1 to include
  5578. object-orientation.  A redesign of Object Oberon.  Type-bound procedures
  5579. (equivalent to methods), read-only export of variables and record fields,
  5580. open array variables, and a 'with' statement with variants.  The 'for'
  5581. statement is reintroduced.  Second Intl Modula-2 Conf, Sept 1991.
  5582. ftp: neptune.inf.ethz.ch for SPARC, DECstation, RS/6000, DOS386, MacII
  5583. doc: neptune.inf.ethz.ch:/Oberon/Docu/Oberon2Report.ps.Z
  5584.  
  5585. OBJ - Joseph Goguen 1976.  A family of declarative "ultra high level"
  5586. languages.  Abstract types, generic modules, subsorts (subtypes with
  5587. multiple inheritance), pattern-matching modulo equations, E-strategies
  5588. (user control over laziness), module expressions (for combining modules),
  5589. theories and views (for describing module interfaces).  For the massively
  5590. parallel RRM (Rewrite Rule Machine).  "Higher-Order Functions Considered
  5591. Unnecessary for Higher-Order Programming", J.A. Goguen, in Research TOpics
  5592. in Functional Programming.
  5593. OBJ0 - Tardo.  Based on unsorted equational logic.
  5594. OBJT - Tardo.  Error algebras plus an image construct.
  5595. OBJ1 - 
  5596.  
  5597. OBJ2 - Clear-like parametrized modules.  A functional system based on
  5598. equations.  "Principles of OBJ2", K. Futatsugi et al, 12th POPL, ACM 1985,
  5599. pp.52-66.
  5600.  
  5601. OBJ3 - Based on order-sorted rewriting.  Agent-oriented.  "Introducing
  5602. OBJ3", J. Goguen et al, SRI-CSL-88-9, SRI Intl (1988).  Runs on AKCL.
  5603. info: obj3sys@crl.sri.com
  5604.       obj3dist@csl.sri.com
  5605.  
  5606. Object CHILL - "Object CHILL - An Object Oriented Language for Systems
  5607. Implementation", J. Winkler et al, ACM Comp Sci Conf 1992, pp.139-147.
  5608.  
  5609. ObjectLOGO - A variant of LOGO with object-oriented extensions.  Lexical
  5610. scope.  Version 2.6, for the Mac.  Paradigm Software
  5611. <paradigm@applelink.apple.com> (617)576-7675.
  5612.  
  5613. Object Oberon - H. Moessenboeck & J. Templ, 1989.  Adds classes and methods
  5614. to Oberon.  "Object Oberon - An Object-Oriented Extension of Oberon", H.
  5615. Moessenboeck et al, ETH TR 109 (Apr 1990).  "Object Oberon - A Modest
  5616. Object-Oriented Language", H. Moessenboeck & J. Templ, in Structured
  5617. Programming 10(4), 1989.  (See Oberon-2).
  5618.  
  5619. Object-Oriented Turing - under development.  Adds objects and classes to
  5620. Turing Plus.
  5621. info: <distrib@turing.toronto.edu>
  5622.  
  5623. Object Pascal - Developed jointly by Apple Computer and Niklaus Wirth.  An
  5624. object-oriented Pascal.  "Object Pascal Report", Larry Tesler, Structured
  5625. Language World 9(3):10-17 (1985).
  5626.  
  5627. Object Z - U Queensland.  "Object Orientation in Z", S. Stepney et al eds,
  5628. Springer 1992.
  5629.  
  5630. Objective C - Brad Cox, Productivity Products.  An object-oriented superset
  5631. of ANSI C, incorporating many ideas from Smalltalk.  Implemented as a
  5632. preprocessor for C.  No operator overloading, no multiple inheritance, no
  5633. class variables.  Does have run-time binding.  Used as the system
  5634. programming language on the NeXT.  "Object-Oriented Programming: An
  5635. Evolutionary Approach", Brad Cox, A-W 1986.  Versions for MS-DOS, Macs, VMS
  5636. and Unix workstations.  Language versions by Stepstone, NeXT and GNU are
  5637. slightly different.  Stepstone Corp, (203) 426-1875.
  5638.  
  5639. Objective Turing - 
  5640.  
  5641. Objlog - CNRS, Marseille.  Frame-based language combining objects and
  5642. Prolog II.  "The Inheritance Processes in Prolog", C. Chouraki et al,
  5643. GRTC/187bis/Mars 1987 (CNRS).
  5644.  
  5645. info:somebody@grtc.cnrs-mrs.fr
  5646.  
  5647. ObjVlisp - 1984.  An object-oriented extension of Vlisp.  Reflective
  5648. architecture.  "Metaclasses are First Class: The ObjVlisp Model", P.
  5649. Cointe, SIGPLAN Notices 22(121):156-167 (Dec 1987) (OOPSLA '87).
  5650.  
  5651. ObjVProlog - Logic programming and object-orientation, an adaptation of the
  5652. ObjVlisp model to Prolog.  "ObjVProlog: Metaclasses in Logic", J.
  5653. Malenfant, ECOOP '89, Cambridge U Press 1989, pp.257-269.
  5654.  
  5655. Oblog - Object-oriented extension to Prolog.  Small, portable.
  5656. info: Margaret McDougall, EdCAAD, Dept Arch, U Edinburgh, EH1 1JZ.
  5657.  
  5658. OBSCURE - "A Formal Description of the Specification Language OBSCURE", J.
  5659. Loeckx, TR A85/15, U Saarlandes, Saarbrucken, 1985.
  5660.  
  5661. Oc - ("Oh see!")  Parallel logic language.  "Self-Description of Oc and its
  5662. Applications", M. Hirata, Proc 2nd Natl Conf Japan Soc Soft Sci Tech,
  5663. pp.153-156 (1984).
  5664.  
  5665. OCAL - On-Line Cryptanalytic Aid Language.  "OCAS: On-line Cryptanalytic
  5666. Aid System", D.J. Edwards, MAC-TR-27, MIT Project MAC, May 1966.  Sammet
  5667. 1969, p.642.
  5668.  
  5669. occam - (named for the English philosopher William of Occam (1300-1349))
  5670. Now known as "occam 1".  David May et al, 1982.  Concurrent algorithms,
  5671. based on CSP and EPL.  Designed for the INMOS transputer and vice versa. 
  5672. Expressions are processes, which may be combined in serial and parallel. 
  5673. Processes communicate via named unidirectional channels.  There is no
  5674. operator precedence.  "Occam", D. May, SIGPLAN Notices 18(4):69-79 (1983).
  5675. ftp: watserv1.waterloo.edu, simulator for VAX, Tahoe
  5676. list: occam@sutcase.case.syr.edu
  5677.  
  5678. occam 2 - 1987.  An extension of occam1.  Occam 2 adds floating point,
  5679. functions and a type system.  "occam 2 Reference Manual", INMOS, P-H 1988,
  5680. ISBN 0-13-629312-3.
  5681.  
  5682. OCL - Operator Control Language.  Batch language for the IBM System/36, 
  5683. used specifically with the RPG II compiler.  (See CL).
  5684.  
  5685. OCODE - Intermediate language used by the Cambridge BCPL compiler.  "The
  5686. Portability of the BCPL Compiler", M. Richards, Soft Prac & Exp 1(2)
  5687. (1971).
  5688.  
  5689. OIL - 
  5690.  
  5691.   1. "The Architecture of the FAIM-1 Synbolic Multiprocessing System", A.
  5692. Davis et al, 9th Intl Joint Conf in Artif Intell, 1985, pp.32-38.
  5693.  
  5694.   2. Operator Identification Language.  Used for overload resolution by the
  5695. Eli compiler-writing system.  
  5696.  
  5697. OLC - On-Line Computer system.  UCSB ca. 1966.  Predecessor of Culler-Fried
  5698. System.  Sammet 1969, p.253.
  5699.  
  5700. OLDAS - On-line Digital Analog Simulator.  Interactive version of MIMIC,
  5701. for IBM 360.  "OLDAS: An On-line Continuous System Simulation Language",
  5702. R.P. Cullen, in Interactive Systems for Experimental Applied Mathematics,
  5703. A-P 1968.
  5704.  
  5705. Omega - Prototype-based object-oriented language.  "Type-Safe Object-
  5706. Oriented Programming with Prototypes - The Concept of Omega", G. Blaschek,
  5707. Structured Programming 12:217-225 (1991).
  5708.  
  5709. OMNICODE - Thompson, 1956.  Ran on IBM 650.  Sammet 1969, p.5.
  5710.  
  5711. OMNIFAX - Alternate name for NYU OMNIFAX?  Early system on UNIVAC I or II. 
  5712. Listed in CACM 2(5):16 (May 1959).
  5713.  
  5714. OMNITAB - Statistical analysis and desk calculator.  "OMNITAB II User's
  5715. Reference Manual", NBS Tech Note 552 (Oct 1971).  Sammet 1969, pp.296-299. 
  5716. Version: OMNITAB II.
  5717.  
  5718. Ondine - "Concurrency Introduction to an Object-Oriented Language System
  5719. Ondine", T. Ogihara et al, 3rd Natl Conf Record A-5-1, Japan Soc for Soft
  5720. Sci Tech, Japan 1986.
  5721.  
  5722. Ontic - Object-oriented language for an inference system.  LISP-like
  5723. appearance, but based on set theory.  "Ontic: A Knowledge Representation
  5724. System for Mathematics", D.A. McAllester, MIT Press 1989.
  5725.  
  5726. OOF - Object-Oriented Fortran.  Data items can be grouped into objects,
  5727. which can be instantiated and executed in parallel.  Available now for
  5728. Suns, Iris, iPSC, soon for nCUBE.
  5729. info: dreese@erc.msstate.edu
  5730.  
  5731. OOPS - "OOPS: A Knowledge Representation Language", D. Vermeir, Proc 19th
  5732. Intl Hawaii Conf on System Sciences, IEEE (Jan 1986) pp.156-157.
  5733.  
  5734. OOZE - Object oriented extension of Z.  "Object Orientation in Z", S.
  5735. Stepney et al eds, Springer 1992.
  5736.  
  5737. Opal -
  5738.  
  5739.   1. DSP language.  "OPAL: A High Level Language and Environment for DSP
  5740. boards on PC", J.P. Schwartz et al, Proc ICASSP-89, 1989.
  5741.  
  5742.   2. Language of the object-oriented database GemStone.  "Making Smalltalk
  5743. a Database System", G. Copeland et al, Proc SIGMOD'84, ACM 1984, pp.316-
  5744. 325.
  5745.  
  5746.   3. Simulation language with provision for stochastic variables.  An
  5747. extension of Autostat.  "C-E-I-R OPAL", D. Pilling, Internal Report,
  5748. C.E.I.R. Ltd (1963).
  5749.  
  5750.   4. Language for compiler testing said to be used internally by DEC.
  5751.  
  5752. OPS -
  5753.  
  5754.   1. On-line Process Synthesizer.  M. Greenberger, MIT ca. 1964.  Discrete
  5755. simulation under CTSS.  Sammet 1969, p.660.  Versions: OPS-3, OPS-4.  "On-
  5756. line Computation and Simulation: The OPS-3 System", M. Greenberger et al,
  5757. MIT Press 1965.
  5758.  
  5759.   2. Official Production System.  CMU, 1970.  The first production-system
  5760. (i.e. rule-based) programming language, used for building expert systems. 
  5761. Written originally in Franz Lisp, later ported to other LISP dialects.
  5762.  
  5763. OPS5 - Charles L. Forgy.  1977 version of OPS[2], publicly available from
  5764. the author <forgy@cs.cmu.edu>.  "Programming Expert Systems in OPS5", L.
  5765. Brownston et al, A-W 1985.  Other versions: OPS4, OPS5+, OPS83
  5766. ftp: wuarchive.wustl.edu:/mirrors/unix-c/languages/ops5 an OPS5 interpreter
  5767. in Common LISP.
  5768. C5 - An OPS5 implementation in C.  "Rule-Based Programming in the Unix
  5769. System", G.T. Vesonder, AT&T Tech J 67(1), 1988.
  5770. ftp: gatekeeper.dec.com:comp.sources.unix/volume12 OPS5 in Common LISP
  5771.  
  5772. Orca - Vrije Universiteit, Amsterdam, 1986.  Similar to Modula-2, but with
  5773. support for distributed programming using shared data objects, like Linda. 
  5774. A 'graph' data type removes the need for pointers.  Version for the Amoeba
  5775. OS, comes with Amoeba.  "Orca: A Language for Distributed Processing", H.E.
  5776. Bal <bal@cs.vu.nl> et al, SIGPLAN Notices 25(5):17-24 (May 1990).
  5777.  
  5778. Orient84/K - Y. Ishikawa, Keio U, Yokohama.  "A Concurrent Object-Oriented
  5779. Knowledge Representation Language Orient84/K", Y. Ishikawa et al, SIGPLAN
  5780. Notices 21(11):232-241 (OOPSLA '86) (Nov 1986).
  5781.  
  5782. ORTHOCARTAN - A. Krasinski, Warsaw, early 80's.  Symbolic math, especially
  5783. General Relativity.  
  5784.  
  5785. Orwell - Lazy functional language, Miranda-like.  List comprehensions and
  5786. pattern matching.  "Introduction to Orwell 5.00", P.L. Wadler et al,
  5787. Programming Research Group, Oxford U, 1988.
  5788.  
  5789. OSCAR - 
  5790.  
  5791.   1. Oregon State Conversational Aid to Research.  Interactive numerical
  5792. calculations, vectors, matrices, complex arithmetic, string operations, for
  5793. CDC 3300.  "OSCAR: A User's Manual with Examples", J.A. Baughman et al, CC,
  5794. Oregon State U.
  5795.  
  5796.   2. Object-oriented language used in the COMANDOS Project.  "OSCAR:
  5797. Programming Language Manual", TR, COMANDOS Project, Nov 1988.
  5798.  
  5799. OSSL - Operating Systems Simulation Language.  "OSSL - A Specialized
  5800. Language for Simulating Computer Systems", P.B. Dewan et al, Proc SJCC 40,
  5801. AFIPS (Spring 1972).
  5802.  
  5803. Ottawa Euclid - Variant of Euclid.
  5804.  
  5805. OWHY - Functional?  "A Type-Theoretical Alternative to CUCH, ISWIM, OWHY",
  5806. Dana Scott, Oxford U 1969.
  5807.  
  5808. Owl - Original name of Trellis.
  5809.  
  5810. P+ - "Experience with Remote Procedure Calls in a Real-Time Control
  5811. System", B. Carpenter et al, Soft Prac & Exp 14(9):901-907 (Sep 1984).
  5812.  
  5813. P4 - Rusty Lusk <lusk@antares.mcs.anl.gov>.  A macro/subroutine package for
  5814. parallel programming, using monitors on shared memory machines, message
  5815. passing on distributed memory machines.  Implemented as a subroutine
  5816. library for C and Fortran.  An enhancement of the "Argonne macros",
  5817. PARMACS.
  5818. ftp: info.mcs.anl.gov:pub/p4t1.2.tar.Z
  5819.  
  5820. PACT I - Early system on IBM 701.  Listed in CACM 2(5):16 (May 1959). 
  5821. Version: PACT IA for IBM 704.
  5822.  
  5823. PACTOLUS - Digital simulation.  Sammet 1969, p.627.
  5824.  
  5825. Paddle - Language for transformations leading from specification to
  5826. program.  Used in POPART, a grammar-driven programming environment
  5827. generator.  "POPART: Producer of Paddles and Related Tools, System
  5828. Builders' Manual", D.S. Wile TR RR-82-21, ISI, Marina del Rey, CA 1982.
  5829.  
  5830. PAGE - Typesetting language.  "Computer Composition Using PAGE-1", J.L.
  5831. Pierson, Wiley 1972.
  5832.  
  5833. PaiLisp - Parallel Lisp built on Scheme.  1986.  "A Parallel Lisp Language
  5834. PaiLisp and its Kernel Specification", T. Ito et al, in Parallel Lisp:
  5835. Languages and Systems, T. Ito et al eds, LNCS 441, Springer 1989.
  5836.  
  5837. PAISley - Bell Labs.  Operational specification language.  "An Operational
  5838. Approach to Requirements Specification for Embedded Systems", P. Zave, IEEE
  5839. Trans Soft Eng SE-8(3):250-269 (May 1982).
  5840.  
  5841. PAL - 
  5842.  
  5843.   1. Paradox Application Language.  Language for Paradox, Borland's
  5844. relational database.
  5845.  
  5846.   2. For the AVANCE distributed persistent OS.  "PAL Reference Manual", M.
  5847. Ahlsen et al, SYSLAB WP-125, Stockholm 1987.  "AVANCE: An Object Management
  5848. System", A. Bjornerstedt et al, SIGPLAN Notices 23(11):206-221 (OOPSLA '88)
  5849. (Nov 1988).
  5850.  
  5851.   3. Object-oriented Prolog-like language.  "Inheritance Hierarchy
  5852. Mechanism in Prolog", K. Akama, Proc Logic Prog '86, LNCS 264, Springer
  5853. 1986, pp.12-21.
  5854.  
  5855.   4. PDP Assembly Language.  Assembly language for PDP-8 and PDP-11.
  5856.  
  5857.   5. Pedagogic Algorithmic Language.  "PAL - A Language for Teaching
  5858. Programming Linguistics", A. Evans Jr, Proc ACM 23rd Natl Conf,
  5859. Brandon/Systems Press (1968).
  5860.  
  5861. Pam - Toy ALGOL-like language used in "Formal Specification of Programming
  5862. Languages:  A Panoramic Primer", F.G. Pagan, P-H 1981.
  5863.  
  5864. Pandora - Parlog extended to allow "don't-know" non-determinism.  "Pandora:
  5865. Non-Deterministic Parallel Logic Programming", R. Bahgat et al, Proc 6th
  5866. Intl Conf Logic Programming, MIT Press 1989 pp.471-486.
  5867.  
  5868. PANON - A family of pattern-directed string processing languages based on
  5869. generalized Markov algorithms.  "String Processing Languages and
  5870. Generalized Markov Algorithms", A. C. Forino, Proc IFIP Working Conf on
  5871. Symb Manip Languages, pp.141-206, Amsterdam 1968.  PANON-1, based on Simple
  5872. GMA's and PANON-2 based on Conditional Functional GMA's.
  5873.  
  5874. Paragon - IEEE Software (Nov 1991). [?]
  5875.  
  5876. Paralation - PARALlel reLATION.  Sabot, MIT 1987.  A framework for parallel
  5877. programming.  A "field" is an array of objects, placed at different sites. 
  5878. A paralation is a group of fields, defining nearness between field
  5879. elements.  Operations can be performed in parallel on every site of a
  5880. paralation.  "The Paralation Model: Architecture Independent Programming",
  5881. G.W. Sabot <gary@think.com>, MIT Press 1988.
  5882.  
  5883. Paralation LISP - Embeds the paralation model in Common LISP.  Available
  5884. from MIT Press, (800)356-0343.
  5885.  
  5886. Paralation C - Paralation embedded in C.  Under development.
  5887.  
  5888. ParAlfl - Hudak, Yale.  Parallel functional language, a superset of Alfl. 
  5889. Used by the Alfalfa system on Intel iPSC and Encore Multimax.  "Para-
  5890. Functional Programming", P. Hudak, Computer 19(8):60-70 (Aug 1986). 
  5891. "Alfalfa: Distributed Graph Reduction on a Hypercube Multiprocessor", B.
  5892. Goldberg & P. Hudak, TR, Yale U, Nov 1986.
  5893.  
  5894. Parallaxis - U Stuttgart.  Data-parallel (SIMD) language, based on Modula-
  5895. 2.  "User Manual for Parallaxis Version 2.0", T. Braunl, U Stuttgart. 
  5896. Simulator for workstations, Mac and PC.
  5897. ftp: ftp.informatik.uni-stuttgart.de:pub/parallaxis
  5898. info: engelhar@informatik.uni-stuttgart.de
  5899.  
  5900. Parallel C - Never implemented, but influenced the design of C*.
  5901.  
  5902. Parallel FORTH - For the MPP.
  5903.  
  5904. Parallel Pascal - Data-parallel language, similar to Actus and Glypnir. 
  5905. "Parallel Pascal: An Extended Pascal for Parallel Computers", A. Reeves, J
  5906. Parallel Dist Computing 1:64-80 (1984).
  5907.  
  5908. Parallel SML - "Parallel SML: A Functional Language and its Implementation
  5909. in Dactl", Kevin Hammond, Pitman Press 1990.
  5910.  
  5911. Pari - Symbolic math, especially number theory.  Version 1.37 for Unix,
  5912. Macintosh, MS-DOS, Amiga.
  5913. info: <pari@alioth.greco-prog.fr>
  5914. ftp: math.ucla.edu:pub/pari
  5915.  
  5916. Paris - PARallel Instruction Set.  Low-level language for the Connection
  5917. Machine.
  5918.  
  5919. Parlance - Concurrent language.  "Parallel Processing Structures:
  5920. Languages, Schedules, and Performance Results", P.F. Reynolds, PhD Thesis,
  5921. UT Austin 1979.
  5922.  
  5923. Parlog - Clark & Gregory, Imperial College 1983.  An AND-parallel Prolog,
  5924. with guards and committed choice [=don't care] nondeterminism.  Shallow
  5925. backtracking only.  "Parlog: A Parallel Logic Programming Language", K.L.
  5926. Clark and S. Gregory, Imperial College, London, May 1983.  ("Parlog83", in
  5927. which the ouput mechanism was assignment).  "Parallel Logic Programming in
  5928. PARLOG, The Language and Its Implementation", S. Gregory, A-W 1987. 
  5929. ("Parlog86", in which the output mechanism was unification, as in GHC). 
  5930. (See Strand). Implementations: MacParlog and PC-Parlog from Parallel Logic
  5931. Programming Ltd, Box 49 Twickenham TW2 5PH, UK.
  5932. ftp: nuri.inria.fr
  5933. info: parlog@doc.ic.ac.uk
  5934.  
  5935. Parlog++ - Andrew Davison <ad@cs.mu.oz.au>, then Imperial College now U
  5936. Melbourne.  Object orientation plus parallel logic, built on top of
  5937. MacParlog.  "Parlog++: A Parlog Object-Oriented Language", A. Davison,
  5938. Parlog Group, Imperial College 1988.  Sold by PLP Ltd.  
  5939. info: parlog@doc.ic.ac.uk
  5940.  
  5941. PARMACS - Argonne Natl Lab.  The "Argonne macros".  A package of macros
  5942. written in m4 for portable parallel programming, using monitors on shared
  5943. memory machines, and message passing on distributed memory machines.  E.
  5944. Lusk et al, "Portable Programs for Parallel Processors", HRW 1987.  (See
  5945. p4.)
  5946. ftp: research.att.com:netlib/parmacs
  5947.  
  5948. ParMod - "Parallel Programming with ParMod", S. Eichholz, Proc 1987 Intl
  5949. Conf on Parallel Proc, pp.377-380.
  5950.  
  5951. PARSEC - Extensible language with PL/I-like syntax, derived from PROTEUS. 
  5952. "PARSEC User's Manual", Bolt Beranek & Newman (Dec 1972).
  5953.  
  5954. PARULEL - "The PARULEL Parallel Rule Language", S. Stolfo et al, Proc 1991
  5955. Intl Conf Parallel Proc, CRC Press 1991, pp.36-45.
  5956.  
  5957. Pascal - (named for the French mathematician Blaise Pascal (1623-1662))  N.
  5958. Wirth, ca. 1970.  Designed for simplicity, in reaction to the complexity of
  5959. ALGOL 68, and intended as a teaching language.  Innovations: enumeration
  5960. types, subranges, sets, variant records, case statement.  Missing from
  5961. standard Pascal: strings, adjustable arrays, abstract data types,
  5962. random-access files, and separate compilation.  Pascal has been extremely
  5963. influential in programming language design, and has led to a great number
  5964. of variations and descendants.  "PASCAL User Manual and Report", K. Jensen
  5965. & N. Wirth, Springer 1975.  BS 6192, "Specification for Computer
  5966. Programming Language Pascal", British Standards Institute 1982.
  5967.  
  5968. Pascal- - Pascal subset used in Brinch Hansen on Pascal Compilers, P.
  5969. Brinch Hansen, P-H 1985.
  5970.  
  5971. Pascal-2 - [?]
  5972.  
  5973. Pascal-80 - A successor of Platon.  Developed at RC International for
  5974. systems programming.  Later it was renamed Real-Time Pascal.  "PASCAL80
  5975. Report", J. Staunstrup, RC Intl, Denmark Jan 1980.
  5976.  
  5977. Pascal+CSP - "Pascal+CSP, Merging Pascal and CSP in a Parallel Processing
  5978. Oriented Language", J. Adamo, Proc 3rd Intl Conf Distrib Comp Sys, IEEE
  5979. 1982, pp.542-547.
  5980.  
  5981. Pascal-F - Pascal extended to include fixed-point arithmetic.  E. Nelson,
  5982. "Pascal-F: Programming Language for Real-Time Automotive Control", IEEE
  5983. ElectroTechnol. Rev. (USA), 2:39, 1968.
  5984.  
  5985. Pascal-FC - Derived from Pascal-S, provides several types of concurrency:
  5986. semaphores, monitors, both occam/CSP-style and Ada-style rendezvous.  "The
  5987. Teaching Language Pascal-FC", G.L. Davies et al, Computer J 33(2):147-154
  5988. (Apr 1990).
  5989.  
  5990. Pascal/L - A SIMD parallel extension of Pascal.  "Implementation of an
  5991. Array and Vector Processing Language", C. Fernstrom, Intl Conf Parallel
  5992. Proc, IEEE, pp.113-127 (1982)
  5993.  
  5994. Pascal-Linda - Ian Flockhart, U Edinburgh, 1991.  Under development.
  5995.  
  5996. Pascal-m - "Pascal-m: A Language for Loosely Coupled Distributed Systems",
  5997. S. Abramsky et al in Distributed Computing Systems, Y. Paker et al eds,
  5998. Academic Press 1986, pp.163-189.
  5999.  
  6000. Pascal-P - Variant of Pascal used by the UCSD p-system environment. 
  6001. Extended string and array operations, random access files, separate
  6002. compilation, etc.  Available from Pecan.
  6003.  
  6004. Pascal Plus - Jim Welsh & D. Bustard, Queens U, Belfast.  Pascal with
  6005. extensions for object-oriented multiprogramming, uses an 'envelope'
  6006. construct for both packages and classes.  "Pascal Plus - Another Language
  6007. for Modular Multiprogramming", J. Welsh et al, Soft Prac & Exp 9:947
  6008. (1979).  "Sequential Program Structures", J. Welsh et al, P-H ISBN 0-13-
  6009. 806828-3.
  6010.  
  6011. Pascal/R - Pascal with relational database constructs added.  The first
  6012. successful integrated database language.  "Pascal/R Report", J.W. Schmidt
  6013. et al, U Hamburg, Fachbereich Informatik, Report 66, Jan 1980.
  6014.  
  6015. Pascal-S - Simplified Pascal.  Source for a complete Pascal-S compiler is
  6016. in "Pascal-S: A Subset and Its Implementation", N. Wirth in Pascal
  6017. - The Language and Its Implementation, by D.W. Barron, Wiley 1979.
  6018.  
  6019. Pascal-SC - ESPRIT DIAMOND Project.  An extension of Pascal for numerical
  6020. analysis, with controlled rounding, overloading, dynamic arrays and
  6021. modules.  "PASCAL-SC, A Computer Language for Scientific Computation", G.
  6022. Bohlender et al, Academic Press 1987.
  6023.  
  6024. PASRO - PAScal for RObots.  "PASRO - Pascal for Robots", C. Blume et al,
  6025. Springer 1985.
  6026.  
  6027. PAT - Personalized Array Translator.  Small subset of APL.  Sammet 1969,
  6028. p.252.
  6029.  
  6030. Path Pascal - Parallel extension of Pascal.  Processes have shared access
  6031. to data objects.  Constraints on their synchronization are specified in a
  6032. path expression.  "An Overview of Path Pascal's Design", R.H. Campbell,
  6033. SIGPLAN Notices 15(9):13-24 (Sep 1980).
  6034.  
  6035. pc - Parallel C.  U Houston.
  6036. ftp: karazm.math.uh.edu:pub/Parallel/Tools/pc.1.1.1.tar.Z
  6037.  
  6038. PCF - Simply typed, functional.  "Fully Abstract Translations Between
  6039. Functional Languages", J. Riecke, 18th POPL, pp.245-254 (1991).  "LCF
  6040. Considered as a Programming Language", Theor CS 5:223 (1977).
  6041.  
  6042. PCL - 
  6043.  
  6044.   1. Printer Control Language.  Document description language used by
  6045. Hewlett-Packard Laserjet printers, a superset of HP-GL/2.  LaserJet
  6046. III/IIID Printer Technical Reference Manual, HP 33459-90903.  Versions: PCL
  6047. 3, PCL 5.
  6048.  
  6049.   2. Portable CommonLoops.  Started out as an implementation of
  6050. CommonLoops.  Is now being converted to CLOS, but currently implements only
  6051. a subset of the CLOS specification.
  6052.  
  6053.   3. Peripheral Control Language.  Command language for I/O on the CP-V OS.
  6054.  
  6055.   4. "PCL - A Process Oriented Job Control Language", V. Lesser et al, Proc
  6056. 1st Intl Conf Distrib Comp Sys, IEEE 1979, pp.315-329.
  6057.  
  6058. PCN - Program Composition Notation.  A specification language.
  6059. info: <foster@mcs.anl.gov>
  6060.  
  6061. P-code - The intermediate code produced by the Pascal-P compiler.  Assembly
  6062. language for a hypothetical stack machine, the P-machine, said to have been
  6063. an imitation of the instruction set for the Burroughs Large System.  The
  6064. term was first used in Algorithms + Data Structures = Programs, N. Wirth,
  6065. P-H 1976.  A series of Byte articles about writing a Pascal Compiler in
  6066.  
  6067. From billk@cs.ukans.edu Fri Feb  5 05:42:38 1993
  6068. Received: from mars.cs.ukans.edu by cogsci.Berkeley.EDU (5.63/1.29)
  6069.     id AA26000; Fri, 5 Feb 93 05:42:34 -0800
  6070. From: Bill Kinnersley <billk@cs.ukans.edu>
  6071. Date: Fri, 5 Feb 1993 07:41:39 CST
  6072. X-Mailer: Mail User's Shell (7.2.5 10/14/92)
  6073. To: muir@cogsci.Berkeley.EDU
  6074. Subject: Part 7
  6075. Message-Id:  <9302050741.aa07611@cs.ukans.edu>
  6076.  
  6077. Northstar BASIC (ca Aug 1978) also used the term.  Later used in Apple
  6078. Pascal, and as the intermediate language in the UCSD P-system.  "A
  6079. Comparison of PASCAL Intermediate Languages", P.A. Nelson, SIGPLAN Notices
  6080. 14(8):208-213 (Aug 1979).  Variants: P-2 P-code, P-4 P-code, UCSD P-code,
  6081. LASL P-code.
  6082. info: USUS, Box 1148, La Jolla, CA 92038
  6083.  
  6084. PC-TILES - A visual language.
  6085.  
  6086. PCLIPS - Parallel CLIPS - U Lowell.  Concurrent independent CLIPS expert
  6087. systems.  They use 'rassert' (remote assert) to enter facts into each
  6088. other's database.  "PCLIPS: A Distributed Expert System Environment", R.
  6089. Miller, CLIPS Users Group Conf, Aug 1990.
  6090. info: dragon.ulowell.edu:pub/PClips
  6091.  
  6092. PDEL - Partial Differential Equation Language.  Preprocessor for PL/I. 
  6093. "PDEL - A Language for Partial Diferential Equations", A.F. Cardenas, CACM
  6094. 13(3):184-191 (Mar 1970).
  6095.  
  6096. PDELAN - Partial Differential Equation LANguage.  "An Extension of FORTRAN
  6097. Containing Finite Difference Operators", J. Gary et al, Soft Prac & Exp
  6098. 2(4) (Oct 1972).
  6099.  
  6100. PDL2 - Process Design Language.  Developed for the TI ASC computer.  "Texas
  6101. Instruments Process Design Methodology - Design Specification: Process
  6102. Design Language", Volume I (Sep 1976).  Mentioned in "An Overview of Ada"
  6103. J.G.P. Barnes, Soft Prac & Exp 10:851-887 (1980).
  6104.  
  6105. PDS/MaGen - Problem Descriptor System.  Generation of matrices and reports
  6106. for mathematical programming and operations research.  "PDS MaGen User
  6107. Information Manual", Haverly Systems (Dec 1977).
  6108.  
  6109. PEARL -
  6110.  
  6111.   1. Constable, Cornell U, 80's.  Constructive mathematics.
  6112.  
  6113.   2. Process and Experiment Automation Real-Time Language.  A real-time
  6114. language for programming process control systems, widely used in Europe. 
  6115. Size and complexity comparable to Ada.  DIN 66253 Teil 2,
  6116. "Programmiersprache PEARL", Beuth-Verlag, Nov 1980.
  6117.  
  6118.   3. One of five pedagogical languages based on Markov algorithms, used in
  6119. "Nonpareil, a Machine Level Machine Independent Language for the Study of
  6120. Semantics", B. Higman, ULICS Intl Report No ICSI 170, U London (1968). 
  6121. (cf. Brilliant, Diamond, Nonpareil, Ruby[2]).
  6122.  
  6123. Pebble - Polymorphic.  "A Kernel Language for Abstract Data Types and
  6124. Modules", R.M. Burstall & B. Lampson, in Semantics of Data Types, LNCS 173,
  6125. Springer 1984.
  6126.  
  6127. Pebbleman - DoD requirements that led to APSE.
  6128.  
  6129. PECOS - Constraint-based language, built on the object-oriented module of
  6130. Le-Lisp.  "Pecos Reference Manual", ILOG, 1990.  ILOG, 12 av Raspail, BP 7,
  6131. F94251 Gentilly, France.
  6132.  
  6133. PEEL - Used to implement version of EMACS on PRIME computer. [?]
  6134.  
  6135. PENCIL - Pictorial ENCodIng Language.  On-line system to display line
  6136. structures.  Sammet 1969, 675.
  6137.  
  6138. Pepper - Chris Dollin <kers@hplb.hpl.hp.com>.  Variant of POP-11.
  6139.  
  6140. PEPsy - Prolog extended with parallel modules within which explicit OR-
  6141. parallelism can be used.  "PEPsy: A Prolog for Parallel Processing", M.
  6142. Ratcliffe et al, ECRC TR CA-17, 1986.
  6143.  
  6144. Perl - Practical Extraction and Report Language.  Larry Wall <lwall@jpl-
  6145. devvax.jpl.nasa.gov>  An AWK-like scripting language for scanning text and
  6146. printing reports.  "Programming Perl", Larry Wall et al, O'Reilly & Assocs.
  6147. ftp: jpl-devvax.jpl.nasa.gov:pub/perl.4.0 for Unix, MS-DOS, Amiga
  6148.      rascal.utexas.edu:programming/Perl_402_MPW_CPT_bin for Mac
  6149. uucp: osu-cis
  6150.  
  6151. pf - Parallel Fortran.  U Houston.  Under development.
  6152. info: <scott@uh.edu>
  6153.  
  6154. PFL - Holmstrom, Matthews.  A concurrent extension of ML, using CCS.  "PFL:
  6155. A Functional Language for Parallel Programming", S. Holmstrom in Proc
  6156. Declarative Language Workshop, London 1983.
  6157.  
  6158. PHOCUS - Object-oriented Prolog-like language.  "PHOCUS: Production Rules,
  6159. Horn Clauses, Objects and Contexts in a Unification Based System", D. Chan
  6160. et al, Actes du Sem Prog et Logique, Tregastel (May 1987), pp.77-108.
  6161.  
  6162. PIC - Brian Kernighan.  Graphics meta-language for textually describing
  6163. pictures, for use with troff.  Featured in Jon Bentley's "More Programming
  6164. Pearls."  "PIC - A Language for Typesetting Graphics", B.W. Kernighan, Soft
  6165. Prac & Exp 12(1):1-21 (Jan 1982).  "PIC - A Graphics Language for
  6166. Typesetting, Revised User Manual", Bell Labs TR 116, Dec 1984.
  6167.  
  6168. Pick BASIC - see Data/BASIC.
  6169.  
  6170. PIE - CMU.  Similar to Actus.
  6171.  
  6172. PIL - Procedure Implementation Language, subsytem of DOCUS.  Sammet 1969,
  6173. p.678.
  6174.  
  6175. PIL/I - Variant of JOSS.  Sammet 1969, p.217.
  6176.  
  6177. PILE - 
  6178.  
  6179.   1. Polytechnic's Instructional Language for Educators.  Similar in use to
  6180. an enhanced PILOT, but structurally more like Pascal with Awk-like
  6181. associative arrays (optionally stored on disk).  Distributed to about 50
  6182. sites by Initial Teaching Alphabet Foundation for Apple II and CP/M.  "A
  6183. Universal Computer Aided Instruction System," Henry G. Dietz & Ronald J
  6184. Juels, Proc Natl Educ Computing Conf '83, pp.279-282.
  6185.  
  6186.   2. "PILE _ A Language for Sound Synthesis", P. Berg, Comput Music J 3,1
  6187. (1979).
  6188.  
  6189. PILOT - Programmed Inquiry Learning Or Teaching.  CAI language, many
  6190. versions.  "Guide to 8080 PILOT", J. Starkweather, Dr Dobb's J (Apr 1977).
  6191.  
  6192. PINBOL - Decision table language for controlling pinball machines used at
  6193. Atari.  Included a multi-tasking executive and an interpreter that worked
  6194. on data structures compiled from condition:action lists.
  6195.  
  6196. PIRL - Pattern Information Retrieval Language.  Language for digraph
  6197. manipulation, embeddable in FORTRAN or ALGOL, for IBM 7094.  "PIRL -
  6198. Pattern Information Retrieval Language", S. Berkowitz, Naval Ship Res Dev
  6199. Ctr, Wash DC.
  6200.  
  6201. PIT - Language for IBM 650.  (See IT).
  6202.  
  6203. PL-11 - High-level machine-oriented language for the PDP-11.  (May have
  6204. been from CERN.)
  6205.  
  6206. PL/360 - Assembly language for IBM 360 and 370, with a few high-level
  6207. constructs.  "PL/360, A Programming Language for the 360 Computers", N.
  6208. Wirth, J ACM 15(1):37-74 (Jan 1968).
  6209.  
  6210. PL-6 - PL/I-like system language for the Honeywell OS CP-6.
  6211.  
  6212. PL.8 - A systems dialect of PL/I, developed originally for the IBM 801 RISC
  6213. mini, later used internally for IBM RT and R/6000 development.  "An
  6214. Overview of the PL.8 Compiler", M. Auslander et al, Proc SIGPLAN '82 Symp
  6215. on Compiler Writing.
  6216.  
  6217. Pla - High-level music programming language, written in SAIL.  Includes
  6218. concurrency based on message passing.  "Pla: A Composer's Idea of a
  6219. Language", B. Schottstaedt, Computer Music J 7(1):11-20 (Winter 1983).
  6220.  
  6221. PLACE - Programming Language for Automatic Checkout Equipment.  "The
  6222. Compiler for the Programming Language for Automatic Chekcout Equipment
  6223. (PLACE)", AFAPL TR-68-27, Battelle Inst, Columbus, May 1968.
  6224.  
  6225. PLAIN - Programming LAnguage for INteraction.  Pascal-like, with extensions
  6226. for database, string handling, exceptions and pattern matching.  "Revised
  6227. Report on the Programming Language PLAIN", A. Wasserman, SIGPLAN Notices
  6228. 6(5):59-80 (May 1981).
  6229.  
  6230. PLAN - Assembly language for ICL1900 series machines.
  6231.  
  6232. Planet - "An Experiment in Language Design for Distributed Systems", D.
  6233. Crookes et al, Soft Prac & Exp 14(10):957-971 (Oct 1984).
  6234.  
  6235. PLANIT - Programming LANguage for Interaction and Teaching.  CAI language. 
  6236. "PLANIT - A Flexible Language Designed for Computer-Human Interaction",
  6237. S.L. Feingold, Proc FJCC 31, AFIPS (Fall 1967)  Sammet 1969, p.706.
  6238.  
  6239. Plankalkul - Konrad Zuse, ca. 1945.  The first programming language, never
  6240. implemented.  Included arrays and records.  Much of his work may have been
  6241. either lost or confiscated in the aftermath of WWII.  "The Plankalkul of
  6242. Konrad Zuse", F.L. Bauer et al, CACM 15(7):678-685 (Jul 1972).
  6243.  
  6244. PLANNER - C. Hewitt <hewitt@ai.mit.edu> MIT 1967.  A language for writing
  6245. theorem provers.  Never fully implemented, see microPLANNER.  "PLANNER: A
  6246. Language for Proving Theorems in Robots", Carl Hewitt, Proc IJCAI-69, Wash
  6247. DC, May 1969.
  6248.  
  6249. PLANS - Programming Language for Allocation and Network Scheduling.  A PL/I
  6250. preprocessor, used for developing scheduling algorithms.  "A User's Guide
  6251. to the Programming Language for Allocation and Network Scheduling", H.R.
  6252. Ramsey et al, TR SAI-77-068-DEN, Science Applications Inc (Jun 1977).
  6253.  
  6254. Plasma - Carl Hewitt, 1976.  The first actor language.  "Viewing Control
  6255. Structures as Patterns of Passing Messages", C. Hewitt, AI Memo 410, MIT
  6256. 1976.
  6257.  
  6258. Platon - Distributed language based on asynchronous message passing. 
  6259. "Message Passing Communication Versus Procedure Call Communication", J.
  6260. Staunstrup, Soft Prac & Exp 12(3):223-234 (Mar 1982).  "Platon Reference
  6261. Manual", S. Soerensen et al, RECAU, U Aarhus, Denmark.
  6262.  
  6263. PLAY - 1977.  Language for real-time music synthesis.  "An Introduction to
  6264. the Play Program", J. Chadabe ete al, Computer Music J 2,1 (1978).
  6265.  
  6266. Playground - A visual language for children, developed for Apple's Vivarium
  6267. Project.  OOPSLA 89 or 90?
  6268.  
  6269. PL/C - Subset of PL/I for student use.  "User's Guide to PL/C", S. Worona
  6270. et al, Cornell, June 1974.  "PL/C - A High Performance Compiler" H.L.
  6271. Morgan et al, Proc SJCC, AFIPS 38:503-510 (1971).
  6272.  
  6273. PL/I - Programming Language I.  George Radin, 1964.  Oriinally named NPL. 
  6274. An attempt to combine the best features of FORTRAN, COBOL and ALGOL 60. 
  6275. Result is large but elegant.  One of the first languages to have a formal
  6276. semantic definition, using the Vienna Definition Language.  EPL, a dialect
  6277. of PL/I, was used to write almost all of the Multics OS.  PL/I has no
  6278. reserved words.  Types are fixed, float, complex, character strings with
  6279. max length, bit strings, and label variables.  Arrays have lower bounds,
  6280. and may be dynamic. Summation, multi-level structures, structure
  6281. assignment, untyped pointers, side effects, aliasing.  Control flow goto,
  6282. do-end groups, do-to-by-while-end loops, external procedures and internal
  6283. nested procedures and blocks, procedures may be declared recursive. 
  6284. Generic procedures.  Many implementations support concurrency ('call task'
  6285. and 'wait(event)' amount to fork/join) and compile-time statements. 
  6286. Exception handling.  "A Structural View of PL/I", D. Beech, Computing
  6287. Surveys, 2,1 33-64 (1970).  ANS X3.53-1976, X3.74-1981.  PL/I is still
  6288. widely used internally at IBM.
  6289. list: PL1-L@UIUCVMD.BITNET
  6290. ftp: wuarchive.wustl.edu:/mirrors/msdos/pli/runpli1a.arc, PL/I interpreter
  6291. version: LPI for PC's and workstations <rcg@lpi.liant.com>
  6292.  
  6293. PL/I SUBSET - Early 70's version of PL/I for minis.
  6294.  
  6295. PL/I Subset G - The commercial PL/I subset (i.e., what was actually
  6296. implemented by most vendors).
  6297.  
  6298. PL/I-FORMAC - Variant of FORMAC.  "The PL/I-FORMAC Interpreter", J.
  6299. Xenakis, Proc 2nd Symp Symbolic and Algebraic Manip, ACM (Mar 1971). 
  6300. Sammet 1969, p.486.
  6301.  
  6302. Plisp - Pattern LISP.  1990.  A pattern-matching rewrite-rule language,
  6303. optimized for describing syntax translation rules.  (See LISP70).
  6304.  
  6305. PLITS - Programming Language In The Sky.  A computational model for
  6306. concurrency with communication via asynchronous message-passing.  "High
  6307. Level Programming for Distributed Computing", J.A. Feldman, CACM 22(6):353-
  6308. 368 (Jun 1979).
  6309.  
  6310. PL/M - Programming Language/Microcomputers.  MAA (later Digital Research)
  6311. for Intel, 1972.  A very low level language incorporating ideas from PL/I,
  6312. ALGOL and XPL.  Integrated macro processor.  Originally the implementation
  6313. language for CP/M.  "PL/M-80 Programming Manual", Doc 98-268B, Intel 1976. 
  6314. "A Guide to PL/M Programming for Microcomputer Applications", D. McCracken,
  6315. A-W 1978.  Versions: PL/M-80, PL/M-86, PL/M-286.
  6316.  
  6317. PL/P - Programming Language, Prime.  Russ Barbour, PRIME Computer, late
  6318. 70's.  Subset of PL/I used internally for implementation of PRIMOS.  (See
  6319. SPL[4]).
  6320.  
  6321. PL/PROPHET - PL/I-like language for the PROPHET system, used by
  6322. pharmacologists.  "The Implementation of the PROPHET System", P.A.
  6323. Castleman et al, NCC 43, AFIPS (1974).
  6324.  
  6325. PL/S - Programming Language/Systems.  IBM late 60's.  Apparently a hybrid
  6326. of PL/I and ASM.  Much of IBM/360 OS/MFT/MVT/SVS/MVS was written in it. 
  6327. Documented by various IBM internal ZZ-? publications.  Versions: PLS1,
  6328. PLSII.
  6329.  
  6330. PL/Seq - Programming Language for Sequences.  A DSP language.  "A General
  6331. High Level Language for Signal Processors", J. Skytta & O. Hyvarinen,
  6332. Digital Signal Processing 84, Proc Intl Conf, Fiorence, Italy, Sep 1984,
  6333. pp.217-221.
  6334.  
  6335. PLUSS - Proposition of a Language Useable for Structured Specifications. 
  6336. Algebraic specification language, built on top of ASL.  "A First
  6337. Introduction to PLUSS", M.C. Gaudel, TR, U Paris Sud, Orsay 1984.
  6338.  
  6339. PM - "PM, A System for Polynomial Manipulations", G.E. Collins, CACM
  6340. 9(8):578-589 (Aug 1966).
  6341.  
  6342. PLZ - [?]
  6343.  
  6344. PML - Parallel ML.  "Synchronous Operations as First-Class Values", J.H.
  6345. Reppy <jhr@research.att.com>, Proc SIGPLAN 88 Conf Prog Lang Design and
  6346. Impl, June 1988, pp.250-259.
  6347.  
  6348. POGO - Early system on G-15.  Listed in CACM 2(5):16 (May 1959).
  6349.  
  6350. Polka - Object orientation plus parallel logic, built on top of Parlog. 
  6351. "Polka: A Parlog Object-Oriented Language", Andrew Davison
  6352. <ad@mullauna.cs.mu.oz.au>, TR, Parlog Group, Imperial College, London 1988.
  6353. info: parlog@doc.ic.ac.uk
  6354.  
  6355. Poly - 
  6356.  
  6357.   1. D.C.J. Matthews, Cambridge, early 80's.  Polymorphic,
  6358. block-structured.  "An Overview of the Poly Programming Language", D.C.J.
  6359. Matthews <djcm@cl.cam.ac.uk>, in Data Types and Persistence, M.P. Atkinson
  6360. et al eds, Springer 1988.
  6361.  
  6362.   2. St Andrews U, Scotland.  Software Prac & Exp, Oct 1986.[?]
  6363.  
  6364.   3. Polymorphic language used in Polymorphic Programming Languages, David
  6365. M. Harland, Ellis Horwood 1984.
  6366.  
  6367. POLYGOTH - Distributed language integrating classes with a parallel block
  6368. structure, including multiprocedures and fragments.  "Operational Semantics
  6369. of a Distributed Object-Oriented Language and its Z Formal Specification",
  6370. M. Benveniste <mbenveni@irisa.irisa,fr>, TR532, IRISA/INRIA-Rennes.
  6371.  
  6372. Ponder - Jon Fairbairn, <jf@cl.cam.ac.uk>.  Polymorphic, non-strict
  6373. functional language.  Has a type system similar to Girard's System F
  6374. ("Proofs and Types", J-Y. Girard, Cambridge U Press 1989), also known as
  6375. Lambda-2 or the polymorphic lambda calculus.  Ponder adds extra recursive
  6376. 'mu' types to those of F, allowing more general recursion.  "Ponder and its
  6377. Type System", J. Fairbairn, TR 31, Cambridge U Computer Lab, Nov 1982. 
  6378. Also "Subtyping in Ponder", V. Paiva, TR 203.
  6379.  
  6380. POOL2 - Parallel Object-Oriented Language.  Philips Research Labs, 1987. 
  6381. Strongly typed, synchronous message passing, designed to run on DOOM (DOOM
  6382. = Decentralized Object-Oriented Machine).  "POOL and DOOM: The Object-
  6383. Oriented Approach", J.K. Annot, PAM den Haan, in Parallel Computers,
  6384. Object-Oriented, Functional and Logic, P. Treleaven ed.  "Issues in the
  6385. Design of a Parallel Object-Oriented Language", P. America, Formal Aspects
  6386. of Computing 1(4):366-411 (1989).  
  6387.  
  6388. POOL-I - Latest in the line of POOL languages.  "A Parallel Object-Oriented
  6389. Language with Inheritance and Subtyping", P. America et al, SIGPLAN Notices
  6390. 25(10):161-168 (OOPSLA/ECOOP '90) (Oct 1990).
  6391.  
  6392. POOL-T - Object-oriented, concurrent, synchronous.  Predecessor of POOL2. 
  6393. "Definition of the Programming Language POOL-T", Esprit Project 415, Doc.
  6394. 0091, Philips Research Labs, Eindhoven, Netherlands, June 1985.
  6395.  
  6396. POP-1 - Package for On-Line Programming.  1966.  First of the POP family of
  6397. languages.  Used reverse Polish notation.  EPU-R-17, U Edinburgh (Jul
  6398. 1966).
  6399.  
  6400. POP-2 - Robin POPplestone, Edinburgh 1967.  An innovative language
  6401. incorporating many of Landin's ideas, including streams, closures, and
  6402. functions as first-class citizens.  The first implementation was named
  6403. Multi-POP.  "POP-2 Papers", R.M. Burstall et al, Oliver & Boyd 1968. 
  6404. "Programming in POP-2", R.M. Burstall et al, Edinburgh U Press 1971.
  6405.  
  6406. POP-10 - Julian Davies, 1973.  Descendant of POP-2, for the PDP-10.  "POP-
  6407. 10 User's Manual", D.J.M. Davies, CS R25, U West Ontario, 1976.
  6408.  
  6409. POP-11 - Robin POPplestone, 1975.  Originally for the PDP-11.  In some
  6410. ways, POP is like FORTH (stack-oriented, extensible, efficient).  It's also
  6411. like LISP (functional, dynamically typed, interactive, garbage-collected). 
  6412. And the syntax is like Pascal (block-structured).  "Programming in POP-11",
  6413. J. Laventhol <jcl@deshaw.com>, Blackwell 1987.  Implementations: AlphaPop
  6414. for Mac (Computable Functions Inc, 413-253-7637).  PopTalk [?]  POPLOG (U
  6415. Sussex) available for VAX/VMS and most workstations.
  6416. info: Robin Popplestone <pop@cs.umass.edu> (413)253-7637
  6417.  
  6418. POP-9X - Proposed BSI standard for POP-11.
  6419.  
  6420. POP++ - An extension of POPLOG.  Available from Integral Solutions.
  6421.  
  6422. POPCORN - AI system built on POP-2.  "The POPCORN Reference Manual", S.
  6423. Hardy, Essex U, Colchester, 1973.
  6424.  
  6425. Poplar - Morris, 1978.  A blend of LISP with SNOBOL4 pattern matching and
  6426. APL-like postfix syntax.  Implicit iteration over lists, sorting primitive.
  6427. "Experience with an Applicative String-Processing Language", J.H. Morris et
  6428. al, 7th POPL, ACM 1980, pp.32-46.
  6429.  
  6430. POPLER - A PLANNER-type language for the POP-2 environment.  "Popler 1.6
  6431. Reference Manual", D. Davies et al, U Edinburgh, TPU Report No 1 (May
  6432. 1973).
  6433.  
  6434. POPLOG - U Sussex.  Language for the two-stack virtual machine (PVM) which
  6435. underlies the POPLOG interactive environment.  POPLOG supports POP-11,
  6436. LISP, Prolog and ML via shared data structures and incremental compilation. 
  6437. "POPLOG's Two-Level Virtual Machine Support for Interactive Languages", R.
  6438. Smith et al, in Research Directions in Cognitive Science, v.5 (1992).
  6439.  
  6440. PopTalk - A commercial object-oriented derivative of POP, used in the
  6441. Expert System MUSE.  Cambridge Consultants.
  6442.  
  6443. Port - Waterloo Microsystems (now Hayes Canada) ca. 1979.  Imperative
  6444. language descended from Zed.  "Port Language" document in the Waterloo Port
  6445. Development System.
  6446.  
  6447. Portable Standard Lisp - "A Portable Lisp System", M.L. Griss et al, Proc
  6448. 1982 ACM Symp on Lisp and Functional Prog, Aug 1982.
  6449.  
  6450. PORTAL - Process-Oriented Real-Time Algorithmic Language.  "PORTAL - A
  6451. Pascal-based Real-Time Programming Language", R. Schild in Algorithmic
  6452. Languages, J.W. deBakker et al eds, N-H 1981.
  6453.  
  6454. Port Language - "Communicating Parallel Processes", J. Kerridge et al, Soft
  6455. Prac & Exp 16(1):63-86 (Jan 1986).
  6456.  
  6457. POSE - 1967.  An early query language.  "POSE: A Language for Posing
  6458. Problems to Computers", S. Schlesinger et al, CACM 10:279-285 (May 1967).
  6459.  
  6460. POSTQUEL - POSTGRES QUERy Language.  Language used by the database system
  6461. POSTGRES.  "The Design of POSTGRES", M. Stonebraker et al, Proc ACM SIGMOD
  6462. Conf, June 1986.
  6463. ftp: postgres.berkeley.edu:pub/postgresv4r0.tar.Z    Version 4.0
  6464.  
  6465. PostScript - J. Warnock et al, Adobe Systems, ca. 1982.  Interpretive
  6466. FORTH-like language used as a page description language by Apple
  6467. LaserWriter, and now many laser printers and on-screen graphics systems. 
  6468. "PostScript Language Reference Manual" ("The Red Book"), Adobe Systems, A-W
  6469. 1985.
  6470.  
  6471. POSYBL - PrOgramming SYstem for distriButed appLications.  Ioannis
  6472. Schoinas.  A Linda implementation for Unix networks.
  6473. ftp: ariadne.csi.forth.gr:pub/POSYBL.TAR.Z
  6474. info: sxoinas@csd.uch.gr
  6475.  
  6476. PowerFuL - Combines functional and logic programming, using "angelic
  6477. Powerdomains".
  6478.  
  6479. PPL - Polymorphic Programming Language.  Harvard U.  Interactive and
  6480. extensible, based on APL.  "Some Features of PPL - A Polymorphic
  6481. Programming Language", T.A. Standish, SIGPLAN Notices 4(8) (Aug 1969).
  6482.  
  6483. PPLambda - Essentially the first-order predicate calculus superposed upon
  6484. the simply-typed polymorphic lambda-calculus.  The object language for LCF. 
  6485. "Logic and Computation: Interactive Proof with Cambridge LCF", L. Paulson,
  6486. Cambridge U Press, 1987.
  6487.  
  6488. P-Prolog - Parallel logic language.  "P-Prolog: A Parallel Logic Language
  6489. Based on Exclusive Relation", R. Yang et al, Third Intl Conf on Logic Prog,
  6490. 1986, pp.255-269.
  6491.  
  6492. pre-cc - PREttier Compiler Compiler.
  6493. ftp:ftp.comlab.ox.ac.uk:Programs
  6494.  
  6495. PREP - PRogrammed Electronics Patterns.  Language for designing integrated
  6496. circuits.  "Computer Assisted Mask Production", R.L. Rosenfeld, Proc IEEE
  6497. 57(9) Sep 1969.
  6498.  
  6499. PRESTO - Bershad et al, U Washington 1987.  A parallel language for shared-
  6500. memory multiprocessors, built on top of C++.  Provides classes for threads
  6501. and spinlocks.  Also Mesa-style monitors and condition variables.  "PRESTO:
  6502. A Kernel for Parallel Programming Environments", B.N. Bershad et al, U Wash
  6503. CS TR, Jan 1987.
  6504. info: presto@cs.washington.edu
  6505. ftp: cs.washington.edu:pub/presto1.0.tar.Z
  6506.  
  6507. PRINT - PRe-edited INTerpreter.  Early math for IBM 705.  Sammet 1969,
  6508. p.134.
  6509.  
  6510. PRINT I - Early system on IBM 705.  Listed in CACM 2(5):16 (May 1959).
  6511.  
  6512. PRISM - Distributed logic language.  "PRISM: A Parallel Inference System
  6513. for Problem Solving", S. Kasif et al, Proc 1983 Logic Prog Workshop,
  6514. pp.123-152.
  6515.  
  6516. PRL - Proof Refinement Logic.  "PRL: Proof Refinement Logic Programmer's
  6517. Manual",  CS Dept, Cornell, 1983.  Versions: micro-PRL, lambda-PRL, nu-PRL.
  6518. (See NUPRL).
  6519.  
  6520. Probe - Object-oriented logic language based on ObjVlisp.  "Proposition
  6521. d'une Extension Objet Minimale pour Prolog", Actes du Sem Prog en Logique,
  6522. Tregastel (May 1987), pp.483-506.
  6523.  
  6524. PROC - Job control language used in the Pick OS.  "Exploring the Pick
  6525. Operating System", J.E. Sisk et al, Hayden 1986.
  6526.  
  6527. PROCOL - J. Van Den Bos, Erasmus U, Rotterdam.  Constraints and distributed
  6528. delegation.  "PROCOL: A Parallel Object Language with Protocols", J. Van
  6529. Den Bos et al, SIGPLAN Notices 24(10):95-102 (OOPSLA '89) (Oct 1989).
  6530.  
  6531. PROFILE - Simple language for matching and scoring data.  "User's Manual
  6532. for the PROFILE System", Cambridge Computer Assoc (May 1974).
  6533.  
  6534. PROGENY - 1961.  Report generator for UNIVAX SS90.
  6535.  
  6536. Prograph - Technical U, Halifax.  Visual language, a blend of dataflow and
  6537. object orientation.  Available for Mac.  TGS Systems (902) 429-5642.
  6538.  
  6539. PROJECT - Subsystem of ICES.  Sammet 1969, p.616.
  6540.  
  6541. Prolog - PROgrammation en LOGique.  (Original name: SYSTEM Q).  Alain
  6542. Colmerauer and Phillipe Roussel, U Aix-Marseille 1971.  First implemented
  6543. in ALGOL-W in 1972.  Designed originally for natural-language processing. 
  6544. LUSH (or SLD) resolution theorem proving based on the unification alorithm. 
  6545. No user-defined functions, and no control structure other than the built-in
  6546. depth-first search with backtracking.  "Programming in Prolog", W.F.
  6547. Clocksin & C.S. Mellish, Springer 1985.  Early collaboration between
  6548. Marseille and R. Kowalski at U Edinburgh continued until about 1975.  (See
  6549. LM-Prolog, SB-Prolog).  Draft ISO standard.
  6550. ftp: cpsc.ucalgary.ca:pub/prolog1.1 - Prolog interpreter in Scheme
  6551.      aisun1.ai.uga.edu:ai.prolog/eslpdpro.zip ESL Prolog for MS-DOS
  6552.      aisun1.ai.uga.edu:ai.prolog/?  Open Prolog for Mac
  6553.     cs.utah.edu:pub/frolic.tar.Z - Prolog interpreter in Common LISP.
  6554.  
  6555. Prolog-2 - An implementation of Edinburgh Prolog.  "An Advanced Logic
  6556. Programming Language", Anthony Dodd.
  6557. info: Nick Henfrey, ESL (Expert Systems Ltd, Magdalen Centre, Oxford
  6558. Science Park, Oxford, OX4 4GA, tel 0865 784474).
  6559.  
  6560. Prolog-II - Prolog with two new predicates: 'dif' for coroutines and
  6561. 'freeze' for delayed evaluation.  "Prolog II Reference Manual and
  6562. Theoretical Model", A. Colmerauer, Internal Report, GroupeIA, U Aix-
  6563. Marseille (Oct 1982).  Available from ExperIntelligence, Santa Barbara CA.
  6564.  
  6565. Prolog-III - A. Colmerauer, U Aix-Marseille, ca 1984.  Marseille Prolog,
  6566. with unification replaced by constraint resolution.  [deferred goals too?] 
  6567. (Not to be confused with Prolog 3, a commercial product.)  "Opening the
  6568. Prolog-III Universe", BYTE 12(9):177-182 (Aug 1987).  "An Introduction to
  6569. Prolog III", A. Colmerauer, CACM 33(7):69-90 (1990).
  6570.  
  6571. Prolog++ - Phil Vasey, Logic Programming Associates.  Prolog with object-
  6572. oriented features added.  For MS-DOS and X-windows.  Distributed by AI Intl
  6573. Ltd in England and Quintus (800)542-1283.
  6574.  
  6575. Prolog-D-Linda - Embeds the Linda parallel paradigm into SISCtus Prolog.
  6576. ftp: ftp.cs.uwa.au
  6577. info: geoff@cs.uwa.edu.au
  6578.  
  6579. Prolog-Linda - 
  6580.  
  6581.   1. Prolog extended with Linda-style parallelism.  Proc 4th Australian
  6582. Conf on Artif Intell.
  6583. ftp: bison.cs.uwa.oz.au
  6584.  
  6585.   2. Neil MacDonald, U Edinburgh 1989.  Another Prolog extended with Linda,
  6586. implemented on a Computing Surface.
  6587.  
  6588. PROMAL - Computer Language, Mar 1986, pp.128-134. [?]
  6589.  
  6590. Pronet - "The Design of a Programming Language Based on Connectivity
  6591. Networks", R. LeBlanc et al, Proc 3rd Intl Conf Distrib Comp Sys, IEEE
  6592. 1982, pp.532-541.
  6593.  
  6594. Proposal Writing - Extension of FORTRAN for proposal writing.  Sammet 1969,
  6595. p.170.
  6596.  
  6597. PROSE - 
  6598.  
  6599.   1. PROblem Solution Engineering.  Numerical problems including
  6600. differentiation and integration.  "Computing in Calculus", J. Thames,
  6601. Research/Development 26(5) (May 1975).
  6602.  
  6603.   2. A constraints-and-sequencing system similar to Kaleidoscope. 
  6604. "Reflexive Constraints for Dynamic Knowledge Bases", P. Berlandier et al in
  6605. Proc First Intl CS Conf '88: AI: Theory and Appls, Dec 1988.
  6606.  
  6607. PROSPER - "PROSPER: A Language for Specification by Prototyping", J.
  6608. Leszczylowski, Comp Langs 14(3):165-180 (1989).
  6609.  
  6610. ProTalk - Quintus.  An object-oriented Prolog.
  6611.  
  6612. PROTEUS - Extensible language, core of PARSEC.  "The Design of a Minimal
  6613. Expandable Computer Language", J.R. Bell, PhD Thesis, CS, Stanford U (Dec
  6614. 1968).
  6615.  
  6616. Protosynthex - Query system for English text.  Sammet 1969, p.669.
  6617.  
  6618. PS-ALGOL - Persistent Algol.  ca 1981, released 1985.  A derivative of S-
  6619. Algol.  Database capability derived from the longevity of data.  "The PS-
  6620. Algol Reference Manual", TR PPR-12-85, CS Dept, U Glasgow 1985.  IBM PC
  6621. version available from CS Dept, U Strathclyde, Glasgow.
  6622.  
  6623. Psather - Parallel version of Sather, under development.
  6624.  
  6625. PSML - Processor System Modeling Language.  Simulating computer systems
  6626. design.  A preprocessor to SIMSCRIPT.  "Processor System Modeling - A
  6627. Language and Simulation System", F. Pfisterer, Proc Symp on Simulation of
  6628. Computer Systems (Aug 1976).
  6629.  
  6630. P-TAC - Parallel Three Address Code.  "P-TAC: A Parallel Intermediate
  6631. Language", Z. Ariola et al, Fourth Intl Conf Func Prog Langs and Comp Arch,
  6632. ACM Sept 1989.  (See Kid).
  6633.  
  6634. PUB - PUBlishing.  1972.  An early text-formatting language for TOPS-10,
  6635. with syntax based on SAIL.  Inluenced TeX and Scribe.  "PUB: The Document
  6636. Compiler", Larry Tesler, Stanford AI Proj Op Note, Sept 1972.
  6637.  
  6638. PUFFT - "The Purdue University Fast FORTRAN Translator", Saul Rosen et al,
  6639. CACM 8(11):661-666 (Nov 1965).
  6640.  
  6641. PVM - Concurrent language?
  6642.  
  6643. Python - 
  6644.  
  6645.   1. Guido van Rossum <guido@cwi.nl> 1991.  A high-level interpreted
  6646. language combining ideas from ABC, C, Modula-3, Icon, etc.  Intended for
  6647. prototyping or as an extension language for C applications.  Modules,
  6648. classes, user-defined exceptions.  "Linking a Stub Generator (AIL) to a
  6649. Prototyping Language (Python)", Guido van Rossum et al, Proc 1991 EurOpen
  6650. Spring Conf.  Available for Unix, Amoeba and Mac.  Version 0.9.8.
  6651. ftp: ftp.cwi.nl:pub/python
  6652. list: python-list@cwi.nl
  6653.  
  6654.   2. Compiler for CMU Common LISP.
  6655.  
  6656. Q'NIAL - Queen's U, Canada.  A portable incremental compiler for NIAL,
  6657. written in C.  "The Q'NIAL Reference Manual", M.A. Jenkins, Queen's U
  6658. Report, Dec 1983.  Versions for Unix and MS-DOS, from NIAL Systems Ltd,
  6659. Ottawa Canada, (613)234-4188.
  6660.  
  6661. QA4 - Question-answering language.  A procedural calculus for intuitive
  6662. reasoning.  A LISP-based pattern-matching language for theorem proving. 
  6663. "QA4, A Language for Writing Problem-Solving Programs", J.F. Rulifson et
  6664. al, Proc IFIP Congress 1968.
  6665.  
  6666. QBE - Query By Example.  Moshe Zloof, IBM 1975.  A user-friendly query
  6667. language.  "QBE: A Language for Office and Business Automation", M.M.
  6668. Zloof, Computer pp.13-22 (May 1981).
  6669.  
  6670. Qlambda - "Queue-based Multi-processing Lisp", R. Gabriel & J. McCarthy,
  6671. Proc 1984 Symp Lisp and Functional Prog, pp.25-44.
  6672.  
  6673. QLISP - 
  6674.  
  6675.   1. SRI 1973.  General problem solving, influenced by PLANNER.  QA4
  6676. features merged with INTERLISP.  "QLISP - A Language for the Interactive
  6677. Development of Complex Systems", E. Sacerdoti et al, NCC 45:349-356, AFIPS
  6678. (1976).
  6679.  
  6680.   2. A parallel LISP.  "Qlisp", R. Gabriel et al in Parallel Computation
  6681. and Computers for AI, J. Kowalik ed, 1988, pp.63-89.
  6682.  
  6683. QLOG - An integration of logic programming into LISP.  "QLOG - The
  6684. Programming Environment for Prolog in LISP", H.J. Komorowski in Logic
  6685. Prgramming, K.L. Clark et al eds, Academic Press 1982.
  6686.  
  6687. QPE - Two-dimensional pictorial query language.  "Pictorial Information
  6688. Systems", S.K. Chang et al eds, Springer 1980.
  6689.  
  6690. QUEASY - Early system on IBM 701.  Listed in CACM 2(5):16 (May 1959).
  6691.  
  6692. QUEL - Query language used by the database management system INGRES.
  6693.  
  6694. Quest - 
  6695.  
  6696.   1. A language designed for its simple denotational semantics.  "The
  6697. Denotational Semantics of Programming Languages", R. Tennent, CACM
  6698. 19(8):437-453 (Aug 1976).
  6699.  
  6700.   2. Language with a sophisticated type system.  Written in Modula-3. 
  6701. "Typeful Programming", Luca Cardelli <luca@src.dec.com>, RR 45, DEC SRC
  6702. 1989.
  6703. ftp:gatekeeper.dec.com:.1/DEC/Quest/quest12A.tar.Z
  6704.  
  6705. QUICK - Early system on IBM 701.  Listed in CACM 2(5):16 (May 1959).
  6706.  
  6707. Quicksilver - dBASE-like compiler for MS-DOS from WordTech, Orinda, CA.
  6708.  
  6709. QUIKTRAN - FORTRAN-like, interactive with debugging facilities.  Sammet
  6710. 1969, p.226.
  6711.  
  6712. QUIN - Pyle 1965.  Interactive language.  Sammet 1969, p.691.
  6713.  
  6714. Quintec-Objects - Based on Quintec (not Quintus) Prolog.  British.
  6715.  
  6716. Quty - Functional plus logic.  "Quty: A Functional Language Based on
  6717. Unification", M. Sato et al, in Conf Fifth Gen Computer Systems, ICOT 1984,
  6718. pp.157-165.
  6719.  
  6720. QX - (meaning "OK", from E.E. Smith SF books).  Richard Gillmann,  SDC,
  6721. Santa Monica.  Language for digital signal processing of digitized speech. 
  6722. Was part of SDC's speech recognition project.
  6723.  
  6724. Raddle - "On the Design of Large Distributed Systems", I.R. Forman, Proc
  6725. 1st IEEE Intl Conf Comp Langs, pp.25-27 (Oct 1986).
  6726.  
  6727. RAIL - Automatix.  High-level language for industrial robots.
  6728.  
  6729. RAISE - Rigorous Approach to Industrial Software Engineering.  A
  6730. specification and design language.  ESPRIT project 315, CRI A/S, Denmark.
  6731.  
  6732. RAL - Expert system.
  6733.  
  6734. RAMIS II - Rapid Access Management Information System.  Database system. 
  6735. On-Line Software Intl.
  6736.  
  6737. Rapidwrite - Method for translating set of abbreviations into the much more
  6738. verbose COBOL code.  Sammet 1969, p.338.
  6739.  
  6740. RAPT - "An Interpreter for a Language for Describing Assemblies", R.J.
  6741. Popplestone et al, Artif Intell 14:79-107 (1980).
  6742.  
  6743. RASP - "RASP - A Language with Operations on Fuzzy Sets", D.D. Djakovic,
  6744. Comp Langs 13(3):143-148 (1988).
  6745.  
  6746. RATEL - Raytheon Automatic Test Equipment Language.  For analog and digital
  6747. computer controlled test centers.  "Automatic Testing via a Distributed
  6748. Intelligence Processing System", S.J. Ring, IEEE AUTOTESTCON 77 (Nov 1977).
  6749.  
  6750. RATFIV - Successor to RATFOR.
  6751.  
  6752. RATFOR - RATional FORTRAN.  Kernighan.  FORTRAN preprocessor to allow
  6753. programming with C-like control flow.  "Ratfor - A Preprocessor for a
  6754. Rational Fortran", B.W. Kernighan, Soft Prac & Exp 5:395-406 (Oct 1975). 
  6755. Featured in Software Tools, B.W. Kernighan & P.J. Plauger, A-W 1976.
  6756. ftp: wuarchive.wustl.edu: mirrors/unix-c/languages/ratfor.tar-z
  6757.  
  6758. RAWOOP-SNAP - Early system on IBM 1103 or 1103A.  Listed in CACM 2(5):16
  6759. (May 1959).
  6760.  
  6761. R:BASE - MS-DOS 4GL from Microrim.  Based on Minicomputer DBMS RIM.  Was
  6762. Wayne Erickson the author?
  6763.  
  6764. RBCSP - "A Communicating Sequential Process Language and Implementation",
  6765. T. Roper & J. Barter, Soft Prac & Exp 11(11):1215-1234 (Nov 1981).
  6766.  
  6767. rc - Tom Duff.  AT&T Plan 9 shell.  Lookalike by Byron Rakitzis
  6768. <byron@archone.tamu.edu>
  6769. ftp: archone.tamu.edu
  6770.  
  6771. RCC - An extensible language. [?]
  6772.  
  6773. RCL - Reduced Control Language.  A simplified job control language for
  6774. OS360, translated to IBM JCL.  "Reduced Control Language for Non-
  6775. Professional Users", K. Appel in Command Languages, C. Unger ed, N-H 1973.
  6776.  
  6777. RDL - Requirements and Development Language.  "RDL: A Language for Software
  6778. Development", H.C. Heacox, SIGPLAN Notices 14(9):71-79 (Sep 1979).
  6779.  
  6780. Real-Time Euclid - Real-time language, restriction to time-bounded
  6781. constructs.  "Real-Time Euclid: A Language for Reliable Real-Time Systems",
  6782. E. Kligerman et al, IEEE Trans Software Eng SE-12(9):941-949 (Sept 1986).
  6783.  
  6784. Real-Time Mentat - An extension of C++.  "Real-Time Mentat: A Data-Driven
  6785. Object-Oriented System", A.S. Grimshaw et al, Proc IEEE Globecom, Nov 1989
  6786. pp.232-241.
  6787.  
  6788. Real-Time Pascal - Later name for Pascal-80 by RC Intl, Denmark.
  6789.  
  6790. REC - Regular Expression Converter.  See CONVERT.
  6791.  
  6792. Recital - dBASE-like language/DBMS from Recital Corp.  Versions include
  6793. VAX/VMS.
  6794.  
  6795. RECOL - REtrieval COmmand Language.  CACM 6(3):117-122 (Mar 1963).
  6796.  
  6797. RED - (Also "REDL").  Intermetrics.  A language proposed to meet the
  6798. Ironman requirements which led to Ada.  "On the RED Language Submitted to
  6799. the DoD", E.W. Dijkstra, SIGPLAN Notices 13(10):27 (Oct 1978).
  6800.  
  6801. REDCODE - Proposed as a language for "battle programs" in corewars.  (See
  6802. Computer Recreations column in Scientific American.)
  6803.  
  6804. RediLisp - R.M. Keller, U Utah.  Dialect of Lisp used on the Rediflow
  6805. machine, a derivative of FEL.
  6806.  
  6807. REDUCE - Anthony Hearn, 1963.  Symbolic math, ALGOL-like syntax, written in
  6808. LISP.  "REDUCE, Software for Algebraic Computation", G. Rayna, Springer
  6809. 1987.  Version: Reduce 2, based on Portable Standard LISP.
  6810. list: REDUCE-L@DEARN.BITNET
  6811. info: reduce@rand.org
  6812. server: reduce-netlib@rand.org
  6813.  
  6814. REF-ARF - "REF-ARF: A System for Solving Problems Stated as Procedures",
  6815. R.E. Fikes, Artif Intell J 1(1) (Spring 1970).
  6816.  
  6817. REFINE - "Research on Knowledge-Based Software Environments at Kestrel
  6818. Institute", D.R. Smith et al, IEEE Trans Soft Eng, SE-11(11) (1985).
  6819. info: maria@kestrel.edu
  6820.  
  6821. Refined C (RC) - An extension of C to directly specify data access rights
  6822. so that flow analysis, and hence automatic parallelization, is more
  6823. effective.  Research implementations only.  "Refining A Conventional
  6824. Language For Race-Free Specification Of Parallel Algorithms," H.G. Dietz et
  6825. al, Proc 1984 Intl Conf Parallel Proc, pp.380-382.
  6826.  
  6827. Refined Fortran (RF) - Similar to Refined C.  Research implementations
  6828. only.  "Refined FORTRAN: Another Sequential Language for Parallel
  6829. Programming," H.G. Dietz et al, Proc 1986 Intl Conf Parallel Proc,
  6830. pp.184-191.
  6831.  
  6832. REG-SYMBOLIC - Early system on IBM 704.  Listed in CACM 2(5):16 (May 1959).
  6833.  
  6834. Relational Language.  Clark & Gregory.  First parallel logic language to
  6835. use the concept of committed choice.  Forerunner of PARLOG.  "A Relational
  6836. Language for Parallel Programming", K.L. Clark et al, Proc ACM Conf on
  6837. Functional Prog Langs and Comp Arch, pp.171-178, ACM 1981.
  6838.  
  6839. RELATIVE - Early system on IBM 650.  Listed in CACM 2(5):16 (May 1959).
  6840.  
  6841. RELCODE - Early system on UNIVAC I or II.  Listed in CACM 2(5):16 (May
  6842. 1959).
  6843.  
  6844. REL English - Rapidly Extensible Language, English.  A formal language
  6845. based on English.  "Practical Natural Language Processing: The REL System
  6846. as Prototype", Adv in Computers 13, Academic Press 1975.
  6847.  
  6848. RenderMan Shading Language.  "The RenderMan Companion", S. Upstill, A-W
  6849. 1989, chaps 13-15.
  6850.  
  6851. RENDEZVOUS - Query language, close to natural English.  "Seven Steps to
  6852. Rendezvous with the Casual User", E. Codd in Data Base Management, J.W.
  6853. Klimbie et al eds, N-H 1974, pp.179-199.
  6854.  
  6855. REPL - Restricted EPL.  A subset of EPL (the efficient part) used to write
  6856. the core of Multics.
  6857.  
  6858. Required-COBOL - 1961.  Minimal subset of COBOL.  Later dropped entirely. 
  6859. Sammet 1969, p.339.
  6860.  
  6861. Retrieve - Tymshare Corp, 1960's.  Query language, inspired JPLDIS which
  6862. lead to Vulcan[1] and then to dBASE II.
  6863.  
  6864. Revised ALGOL 60 - Alternate name for ALGOL 60 Revised.  Sammet 1969,
  6865. p.773.
  6866.  
  6867. REXX - Restructured EXtended eXecutor.  Cowlishaw, IBM ca. 1979.  (Original
  6868. name: REX.  They also call it "System Product Interpreter").  Scripting
  6869. language for IBM VM and MVS systems, replacing EXEC2.  "Modern Programming
  6870. Using REXX", R.P. O'Hara et al, P-H 1985.  "The REXX Language: A Practical
  6871. Approach to Programming", M.F. Cowlishaw, 1985.  Versions: PC-Rexx for MS-
  6872. DOS, and AREXX for Amiga.
  6873. list: REXX-L@UIUCVMD.BITNET.
  6874. ftp: arexx.uwaterloo.ca:pub/freerexx    REXX interpreters for Unix
  6875.  
  6876. RIGAL - Language for compiler writing.  Data strucures are atoms,
  6877. lists/trees.  Control based on pattern-matching.  "Programming Language
  6878. RIGAL as a Compiler Writing Tool", M.I. Augustson, Inst of Math and CS of
  6879. Latvia U, 1987.
  6880.  
  6881. Rigel - Database language?  Based on Pascal.  Listed by M.P. Atkinson &
  6882. J.W. Schmidt in a tutorial presented in Zurich, 1989.
  6883.  
  6884. RLL - Representation Language Language.  A frame language.  "A
  6885. Representation Language Language", R. Greiner and D.B. Lenat, Proc AAAI-80,
  6886. 1980.
  6887.  
  6888. RMAG - Recursive Macro Actuated Generator.  Robert A. Magnuson, NIH ca
  6889. 1970.  Stand-alone macroprocessor for IBM 360/370 under VS or OS. Many
  6890. built-in features and a library of several hundred macros.  Several large
  6891. systems were written in RMAG to generate source code for languages such as
  6892. IBM JCL, IBM assembly language, COBOL.  There was also a system (SLANG:
  6893. Structured Language Compiler) which would generate 370 assembly language
  6894. from a pseudo-structured-programming language, based on Michael Kessler's
  6895. structure programming macros developed at IBM.  "Project RMAG--RMAG22
  6896. User's Guide", R.A. Magnuson, NIH-DCRT-DMB-SSS-UG103, NIH, DHEW, Bethesda,
  6897. MD 20205 (1977).
  6898.  
  6899. ROADS - Subsystem of ICES.  Sammet 1969, p.616.
  6900.  
  6901. ROBEX - ROBot EXapt.  Aachen Tech College.  Based on EXAPT.  Version:
  6902. ROBEX-M for micros.
  6903.  
  6904. Roff - Text formatting language/interpreter associated with Unix.  (See
  6905. groff, nroff, troff).
  6906.  
  6907. ROME - Experimental object-oriented language.  "The Point of View Notion
  6908. for Multiple Inheritance", B. Carre et al, SIGPLAN Notices 25(10):312-321
  6909. (OOPSLA/ECOOP '90) (Oct 1990).
  6910.  
  6911. Rossette - MCC.  Concurrent object-oriented language.
  6912.  
  6913. RPG - Report Program Generator.  IBM 1965.  For easy production of
  6914. sophisticated large system reports.  Versions: RPG II, RPG III, RPG/400 for
  6915. the IBM AS/400.  MS-DOS versions by California Software and Lattice.  (See
  6916. CL, OCL).
  6917.  
  6918. RPL-1 - Data reduction language.  Proc SJCC 30:571-575, AFIPS (Spring
  6919. 1967).
  6920.  
  6921. RPL - Reverse Polish LISP.  Language used by HP-28 and HP-48 calculators.
  6922.  
  6923. RTC++ - Real-time extension of C++.  "Object-Oriented Real-Time Language
  6924. Design: Constructs for Timing Constraints", Y. Ishikawa et al, SIGPLAN
  6925. Notices 25(10):289-298 (OOPSLA/ECOOP '90) (Oct 1990).
  6926.  
  6927. RT-CDL - Real-Time Common Design Language.  Real-time language for the
  6928. design of reliable reactive systems.  "RT-CDL: A Real-Time Description
  6929. Language and Its Semantics", L.Y. Lin et al, 11th World Computer Congress
  6930. IFIP '89 pp.19-26 (Sep 1989).
  6931.  
  6932. RTL - Register Transfer Language.  Chris Fraser <cwf@research.att.com> & J.
  6933. Davidson, U Arizona early 80's.  Intermediate code for a machine with an
  6934. infinite number of registers, used for machine-independent optimization. 
  6935. The GNU C compiler gcc uses a version of RTL with LISP-like syntax.  RTL is
  6936. also incorporated into Davidson's VPCC (Very Portable C compiler) at U
  6937. Virginia.
  6938.  
  6939. RTL/1 - Real Time Language.  Barnes, ICI 1971.  A real-time language, the
  6940. predecessor of RTL/2.  "Real Time Languages for Process Control, J.G.P.
  6941. Barnes, Computer J 15(1):15-17 (Feb 1972).
  6942.  
  6943. RTL/2 - Barnes, ICI 1972.  Small real-time language based on ALGOL 68, with
  6944. separate compilation.  A program is composed of separately compilable
  6945. 'bricks' (named modules) which may be datablock, procedure, or stack.  A
  6946. stack is a storage area for use as a workspace by a task.  The language is
  6947. block-structured and weakly typed.  Simple types are byte, int, frac and
  6948. real, no Boolean.  Compound types may be formed from arrays, records and
  6949. refs (pointers).  There are no user-defined types.  Control consists of if-
  6950. then-elseif-else-end, for-to-by-do-rep, block-endblock, switch, goto, and
  6951. label variables.  "RTL/2: Design and Philosophy", J.G.P. Barnes, Hayden &
  6952. Son, 1976.
  6953.  
  6954. Ruby -
  6955.  
  6956.   1. Hardware description language.  "Ruby - A Language of Relations and
  6957. Higher-Order Functions", M. Sheeran, Proc 3rd Banff Workshop on Hardware
  6958. Verification, Springer 1990.
  6959.  
  6960.   2. One of five pedagogical languages based on Markov algorithms, used in
  6961. "Nonpareil, a Machine Level Machine Independent Language for the Study of
  6962. Semantics", B. Higman, ULICS Intl Report No ICSI 170, U London (1968). 
  6963. (cf. Brilliant, Diamond, Nonpareil, Pearl[3]).
  6964.  
  6965. RUFL - Rhodes University Functional Language.  Rhodes U, Grahamstown, South
  6966. Africa.  Miranda-like.
  6967.  
  6968. RUNCIBLE - Early system for math on IBM 650.  Listed in CACM 2(5):16 (May
  6969. 1959).
  6970.  
  6971. RUSH - Remote Use of Shared Hardware.  ca 1966.  Interactive dialect of
  6972. PL/I, related to CPS[1].  "Introduction to RUSH", Allen-Babcock Computing
  6973. 1969.  Sammet 1969, p.309.
  6974.  
  6975. Russell - (named for the British mathematician Bertrand Russell (1872-
  6976. 1970))  A. Demers & J. Donahue.  A compact, polymorphically typed
  6977. functional language, with bignums and continuations.  Types are themselves
  6978. first-class values and may be passsed as arguments.  "An Informal
  6979. Description of Russell", H. Boehm et al, Cornell CS TR 80-430, 1980.
  6980. ftp: parcftp.xerox.com:pub/russell/russell.tar.Z
  6981.  
  6982. RUTH - Harrison <D.A.Harrison@newcastle.ac.uk>.  Real-time language based
  6983. on LispKit.  Uses timestamps and real-time clocks.  "RUTH: A Functional
  6984. Language for Real-Time Programming", D. Harrison in PARLE: Parallel
  6985. Architectures and Languages Europe, LNCS 259, Springer 1987,
  6986. pp.297-314.
  6987.  
  6988. S - AT&T.  Statistical analysis.  "S: An Interactive Environment for Data
  6989. Analysis and Graphics", Richard A. Becker, Wadsworth 1984.
  6990.  
  6991. S3 - ALGOL-like system language for the ICL 2900 computer.
  6992.  
  6993. SAC - Early system on Datatron 200 series.  Listed in CACM 2(5):16 (May
  6994. 1959).
  6995.  
  6996. SAC-1 - G.E. Collins.  Early symbolic math system, written in FORTRAN. 
  6997. Proc 2nd Symp Symb Alg Manip pp.144-152 (1971).
  6998.  
  6999. SAC2 - Symbolic math system, compiles to FORTRAN or Common LISP. 
  7000. <jma@poly.polytechnique.fr>
  7001.   
  7002. SAD SAM - Query language by Lindsay.  Sammet 1969, p.669.
  7003.  
  7004. SAFARI - ON-line text editing system by MITRE.  Sammet 1969, p.685.
  7005.  
  7006. SAIL -
  7007.  
  7008.   1. Early system on Larc computer.  Listed in CACM 2(5):16 (May 1959).
  7009.  
  7010.   2. Stanford Artificial Intelligence Language.  Dan Swinehart & Bob
  7011. Sproull,  Stanford AI Project, 1970.  A large ALGOL-60-like language for
  7012. the DEC-10 and DEC-20.  Its main feature is a symbolic data system based
  7013. upon an associative store (originally called LEAP).  Items may be stored as
  7014. unordered sets or as associations (triples).  Processes, events and
  7015. interrupts, contexts, backtracking and record garbage collection.  Block-
  7016. structured macros.  "Recent Developments in SAIL - An ALGOL-based Language
  7017. for Artificial Intelligence", J. Feldman et al, Proc FJCC 41(2), AFIPS
  7018. (Fall 1972).  (See MAINSAIL).
  7019.  
  7020. SAINT - Symbolic Automatic INTegrator.  J. Slagle, MIT 1961.  Written in
  7021. LISP.  Sammet 1969, p.410.
  7022.  
  7023. SAL - 
  7024.  
  7025.   1. Single Assignment Language.
  7026.  
  7027.   2. Simple Actor Language.  A minimal actor language, used for pedagogical
  7028. purposes in Actors, A Model of Concurrent Computation in Distributed
  7029. Systems, G. Agha, MIT Press 1986.
  7030.  
  7031. SALEM - "SALEM - A Programming System for the Simulation of Systems
  7032. Described by Partial Differential Equations", S.M. Morris et al, Proc SJCC
  7033. 33(1), 1968.
  7034.  
  7035. S-Algol - Orthogonal data structures on Algol-60.  "S-Algol Language
  7036. Reference Manual", R. Morrison, TR CS/79/1 U St Andrews, 1979.  "An
  7037. Introduction to Programming with S-Algol", A.J. Cole & R. Morrison,
  7038. Cambridge U Press 1982.
  7039.  
  7040. SALT -
  7041.  
  7042.   1. Symbolic Assembly Language Trainer.  Assembly-like language
  7043. implemented in BASIC by Kevin Stock, now at Encore in France.
  7044.  
  7045.   2. Sam And Lincoln Threaded language.  A threaded extensible variant of
  7046. BASIC.  "SALT", S.D. Fenster et al, BYTE (Jun 1985) p.147.
  7047.  
  7048. SAM76 - Claude Kagan.  Macro language, a descendant of TRAC.  Version for
  7049. CP/M.  Dr Dobbs J ca 1977.
  7050.  
  7051. Sandman - DoD requirements that led to APSE.
  7052.  
  7053. SAP - Symbolic Assember Program.  IBM 704 assembly language, late 50's.
  7054.  
  7055. SAS - Statistical Analysis System.  Statistical and matrix language,
  7056. PL/I-like syntax.  "A User's Guide to SAS", A.J. Barr, SAS Inst 1976.
  7057.  
  7058. SASL - Saint Andrews Static Language.  Turner, 1976.  A derivative of ISWIM
  7059. with infinite data structures.  Fully lazy and weakly typed.  Designed for
  7060. teaching functional programming, with very simple syntax.  A version of the
  7061. expert system EMYCIN has been written in SASL.  "A New Implementation
  7062. Technique for Applicative Languages", D.A. Turner, Soft Prac & Exp 8:31-49
  7063. (1979).
  7064. ftp: a.cs.uiuc.edu:/uiuc/kamin.distr/distr/sasl.p
  7065.  
  7066. SASL+LV - Unifies logic and functional programming.  A more complete
  7067. version of FGL+LV, in SASL syntax.  "Combinator Evaluations of Functional
  7068. Programs with Logical Variables", G. Bage et al, TR UUCS-87-027, U Utah,
  7069. Oct 1987.
  7070.  
  7071. SASL-YACC - Simon Peyton-Jones.  A version of Yacc written in SASL. [?]
  7072.  
  7073. Sather - (named for the Sather Tower at UCB, as opposed to the Eiffel
  7074. Tower)  Steve M. Omohundro, ICSI, Berkeley.  Eiffel-like, but smaller and
  7075. faster.  Clean and simple syntax, parameterized classes, multiple
  7076. inheritance, strong typing, garbage collection.  Compiles to C code.
  7077.  
  7078. From billk@cs.ukans.edu Fri Feb  5 05:42:42 1993
  7079. Received: from mars.cs.ukans.edu by cogsci.Berkeley.EDU (5.63/1.29)
  7080.     id AA26004; Fri, 5 Feb 93 05:42:38 -0800
  7081. From: Bill Kinnersley <billk@cs.ukans.edu>
  7082. Date: Fri, 5 Feb 1993 07:41:56 CST
  7083. X-Mailer: Mail User's Shell (7.2.5 10/14/92)
  7084. To: muir@cogsci.Berkeley.EDU
  7085. Subject: Part 8
  7086. Message-Id:  <9302050741.aa07613@cs.ukans.edu>
  7087.  
  7088. ftp: icsi-ftp.berkeley.edu
  7089. list: sather-admin@icsi.berkeley.edu
  7090.  
  7091. SB-Prolog - Stony Brook Prolog.  PD Prolog implementation for Unix.
  7092. ftp: sbcs.sunysb.edu: pub/sbprolog/v3.0
  7093.      ux1.cso.uiuc.edu: amiga/fish/ff140 and ff141  Version 2.3.2 for Amiga
  7094.  
  7095. SCAN - 
  7096.  
  7097.   1. "A Parallel Implementation of the SCAN Language", N.G. Bourbakis, Comp
  7098. Langs 14(4):239-254 (1989).
  7099.  
  7100.   2. DEC. A real-time language.  [same as 1?]
  7101.  
  7102. SCEPTRE - Designing and analyzing circuits.  "SCEPTRE: A Computer Program
  7103. for Circuit and Systems Analysis", J.C. Bowers et al, P-H 1971.
  7104.  
  7105. Scheme - G.L. Steele & G.J. Sussman, 1975.  A LISP dialect, small and
  7106. uniform, with clean semantics.  Scheme is applicative-order and lexically
  7107. scoped, and treats both functions and continuations as first-class objects. 
  7108. "The Revised^4 Report on the Algorithmic Language Scheme", W. Clinger et
  7109. al, MIT (Nov 1991) (ftp from altdorf.ai.mit.edu).
  7110. Implementations: Scheme84 (Indiana U), MacScheme (Semantic Microsystems),
  7111. PC Scheme (TI).  (See T).
  7112. "Orbit: An Optimizing Compiler for Scheme", D.A. Kranz et al, SIGPLAN
  7113. Notices 21(7):281-292 (Jul 1986).
  7114. ftp: altdorf.ai.mit.edu:archive/scm/scm4a2.tar.Z (SCM, Aubrey Jaffer       
  7115.          <jaffer@zurich.ai.mit.edu>) in C for Amiga, Atari-ST, Mac, MS-DOS, 
  7116.          NOS/VE, VMS, Unix.  Conforms to Revised^4 Report and IEEE P1178
  7117.      altdorf.ai.mit.edu:archive/scheme-7.1 (MIT-Scheme, Liar compiler)
  7118.      gatekeeper.dec.com:pub/comp.sources.misc/volume8/elk (for Suns)
  7119.      acorn.cs.brandeis.edu:dist/gambit1.51-tar.Z (compiler for 68K's)
  7120.      world.std.com:/src/lisp/siod-v2.8-shar (Scheme In One Defun, George   
  7121.          Carrette <gjc@mitech.com>)
  7122. list: scheme@mc.lcs.mit.edu
  7123. repository: nexus.yorku.ca:pub/scheme
  7124.  
  7125. Scheme-Linda - Ulf Dahlen, U Edinburgh, 1990.  On the Computing Surface and
  7126. the Symmetry.  "Scheme-Linda", U. Dahlen et al, EPCC-TN-90-01 Edinburgh
  7127. 1990.
  7128.  
  7129. Schoonschip - (Dutch for "beautiful ship")  M. Veltman, CERN, 1964. 
  7130. Symbolic math, especially High Energy Physics.  Algebra only, no
  7131. derivatives.  Originally implemented in CDC-6600 and 7600 assembly
  7132. language, currently in 680x0 assembly language.  Latest versions (Oct 1991)
  7133. include Amiga, Atari ST, Sun 3/60, NeXT.
  7134. info: David Williams <dnw@williams.physics.lsa.umich.edu>
  7135. ftp: archive.umich.edu:physics/schip
  7136.  
  7137. SCL - Systems Control Language.  ICL2900 VME/B O/S command shell.  Block
  7138. structured, strings, superstrings (lists of strings), int, bool, array
  7139. types.  Can trigger a block whenever a condition on a variable value
  7140. occurs.  Macros supported.  Commands are treated like procedure calls. 
  7141. Default arguments.  "VME/B SCL Syntax", Intl Computers Ltd 1980.
  7142.  
  7143. Scode - Internal representation used by the Liar compiler for MIT Scheme.
  7144.  
  7145. SCOOP - Structured Concurrent Object-Oriented Prolog.  "SCOOP, Structured
  7146. Concurrent Object-Oriented Prolog", J. Vaucher et al, in ECOOP '88, S.
  7147. Gjessing et al eds, LNCS 322, Springer 1988, pp.191-211.
  7148.  
  7149. SCOOPS - Scheme Object-Oriented Programming System.  TI, 1986.  Multiple
  7150. inheritance, class variables.
  7151. ftp: altdorf.ai.mit.edu:archive/scheme-library/unsupported/CScheme
  7152.  
  7153. Scratchpad I - Richard Jenks, Barry Trager, Stephen M. Watt & Robert S.
  7154. Sutor, IBM Research, ca 1971.  General-purpose language originally for
  7155. interactive symbolic math.  It features abstract parametrized datatypes,
  7156. multiple inheritance and polymorphism.  Implementations for VM/CMS and AIX. 
  7157. "Scratchpad User's Manual", RA 70, IBM (June 1975).  Version: Scratchpad
  7158. II.  "Scratchpad II Programming Language Manual", R.D. Jenks et al, IBM,
  7159. 1985.  (See AXIOM.)
  7160. Scratchpad II Newsletter: Computer Algebra Group, TJWRC, Box 218, Yorktown
  7161. Hts, NY 10598.
  7162.  
  7163. Screenwrite - Simple query language.  Honeywell late 70's, Level 6 minis.
  7164.  
  7165. Scribe - Brian Reid.  A text-formatting language.
  7166.  
  7167. SCRIPT - 
  7168.  
  7169.   1. Early system on IBM 702.  Listed in CACM 2(5):16 (May 1959).
  7170.  
  7171.   2. Real-time language.  "A Communication Abstraction Mechanism and its
  7172. Verification", N. Francez et al, Sci Comp Prog 6(1):35-88 (1986).
  7173.  
  7174. SCROLL - String and Character Recording Oriented Logogrammatic Language. 
  7175. "SCROLL - A Pattern Recording Language", M. Sargent, Proc SJCC 36 (1970).
  7176.  
  7177. SDL -
  7178.  
  7179.   1. System Software Development Language.  System software for the B1700. 
  7180. "System Software Development Language Reference Manual", 1081346, Burroughs
  7181. Corp (Dec 1974).
  7182.  
  7183.   2. Specification and Description Language.  CCITT.  Specification
  7184. language for discrete interactive systems such as industrial process
  7185. control or traffic control.  Said to have a visual component?  Proc Plenary
  7186. Assembly, Melbourne 14-25 Nov 1988, Fasc X.1, CCITT.   "Telecommunications
  7187. Systems Engineering Using SDL", R. Saracco et al, N-H 1989.  (See XDL).
  7188.  
  7189.   3. Shared Dataspace Language.  "A Shared Dataspace Language Supporting
  7190. Large-Scale Concurrency", G. Roman et al, Proc 8th Intl Conf Distrib Comp
  7191. Sys, IEEE 1988, pp.265-272.
  7192.  
  7193.   4. Structure Definition Language.  A tool used internally by DEC to
  7194. define and generate the symbols used for VMS internal data structures in
  7195. various languages.
  7196.  
  7197. SDMS - Query language.
  7198.  
  7199. Sed - Stream editor.  The Unix stream editor.
  7200.  
  7201. SEESAW - Early system on IBM 701.  Listed in CACM 2(5):16 (May 1959).
  7202.  
  7203. Sel - 
  7204.  
  7205.   1. Self-Extensible Language.  "SEL - A Self-Extensible Programming
  7206. Language", G. Molnar, Computer J 14(3):238-242 (Aug 1971).
  7207.  
  7208.   2. Bharat Jayaraman.  "Towards a Broader Basis for Logic Programming", B.
  7209. Jayaraman, TR CS Dept, SUNY Buffalo, 1990.  "Set Abstraction in Functional
  7210. and Logic Programming", F.S.K. Silbermann <fs@cs.tulane.edu> et al, ACM
  7211. Proc [?] 1989.
  7212.  
  7213. Self - Small, dynamically-typed object-oriented language, based purely on
  7214. prototypes and delegation.  Allows objects to inherit state, and to
  7215. dynamically change their patterns of inheritance.  Threads.  "Self: The
  7216. Power of Simplicity", David Ungar <ungar@sun.eng.com> et al, SIGPLAN
  7217. Notices 22(12):227-242 (OOPSLA '87) (Dec 1987).  Version: 2.0
  7218. ftp: self.stanford.edu
  7219. list: self-interest@self.stanford.edu
  7220. request: self-request@self.stanford.edu
  7221.  
  7222. Seneca - R. Griesemer, 1990.  Descendant of Oberon designed for numerical
  7223. applications on supecomputers, especially vector or pipelined
  7224. architectures.  Includes a standard COMPLEX type and special aray
  7225. expressions.  Still under development.  "Seneca - A Language for Numerical
  7226. Applications on Vectorcomputers", Proc CONPAR 90 - VAPP IV Conf.
  7227.  
  7228. SEPIA - Standard ECRC Prolog Integrating Applications.  Prolog with many
  7229. extensions including attributed variables ("metaterms") and declarative
  7230. coroutining.  "SEPIA", Micha Meier <micha@ecrc.de> et al, TR-LP-36 ECRC,
  7231. March 1988.  Version 3.1 available for Suns and VAX.  (See ECRC-Prolog).
  7232. info: sepia-request@ecrc.de
  7233.  
  7234. Seque - "Seque: A Programming Language for Manipulating Sequences", R.E.
  7235. Griswold et al, Comp Langs 13(1):13-22 (1988).
  7236.  
  7237. Sequel - Precursor to SQL.  "System R: Relational Approach to Database
  7238. Management", IBM Res Lab, San Jose, reprinted in Readings in Database
  7239. Systems.
  7240.  
  7241. SETL - SET Language.  Courant Inst, early 70's.  A very high level
  7242. set-oriented language.  Data types include sets (unordered collections),
  7243. tuples (ordered collections) and maps (collections of ordered pairs). 
  7244. Expressions may include quantifiers ('for each' and 'exists').  The first
  7245. Ada translator was written in SETL.  "Programming With Sets - An
  7246. Introduction to SETL", Jacob T. Schwartz et al, Springer 1986.
  7247.  
  7248. SETL2 - SETL with more conventional Ada-like syntax, lexical scoping, full
  7249. block structure, first-class functions and a package and library system. 
  7250. Kirk Snyder <snyder@spunky.cs.nyu.edu>.  "The SETL2 Programming Language",
  7251. W. Kirk Snyder, Courant Inst TR 490, Jan 1990.
  7252. ftp: cs.nyu.edu, for MS-DOS, OS/2, Mac, Unix workstations
  7253.  
  7254. SETL/E - U Essen.  Another derivative of SETL with Ada-like syntax. 
  7255. "SETL/E, A Prototyping System Based on Sets", E.E. Doberkat et al, in
  7256. Tagungsband TOOL90, W. Zorn ed, pp.109-118, U Karlsruhe, Nov 1990.
  7257.  
  7258. SETS - Set Equation Transformation System.  Symbolic manipulation of
  7259. Boolean equations.  "Efficient Ordering of Set Expressions for Symbolic
  7260. Expansion", R.G. Worrell et al, J ACM 20(3):482-488 (Jul 1973).
  7261.  
  7262. SEXI - String EXpression Interpreter.  Early name of SNOBOL.
  7263.  
  7264. SFD-ALGOL - System Function Description-ALGOL.  Extension of ALGOL for
  7265. synchronous systems.  Sammet 1969, p.625.
  7266.  
  7267. SFL - "SFL Language Definition Manual", TR 6413, Intl Computers Ltd.
  7268.  
  7269. SFLV - Unifies logic and functional programming.  SASL+LV with unification
  7270. moved from actual/formal parameter matching to equational clauses.  "Static
  7271. Analysis of Functional Programs with Logical Variables", G. Lindstrom in
  7272. Programming Languages Implementation and Logic Programming, P. Deransart et
  7273. al eds, LNCS 348, Springer 1988.
  7274.  
  7275. SGML - Standard Generalized Markup Language.  "SGML - The User's Guide to
  7276. ISO 8879", J.M. Smith et al, Ellis Harwood, 1988.  ISO/IEC 8879-1986.
  7277. ftp: star.cs.vu.nl:Sgml  an SGML parser
  7278.      mailer.cc.fsu.edu:pub/sgml  another SGML parser
  7279.  
  7280. sh - (or "Shellish").  S.R. Bourne.  Command shell interpreter and script
  7281. language for Unix.  "Unix Time-Sharing System: The Unix Shell", S.R.
  7282. Bourne, Bell Sys Tech J 57(6):1971-1990 (Jul 1978).
  7283.  
  7284. SHACO - Early system on IBM 701.  Listed in CACM 2(5):16 (May 1959).
  7285.  
  7286. SHADOW - Barnett & Futrelle, 1962.  Syntax-directed compiler.  Predecessor
  7287. to SNOBOL?  Sammet 1969, p.448, 605.
  7288.  
  7289. Sharp APL - "A Dictionary of the APL Language", K. Iverson, Pub 0402, Sharp
  7290. Assocs, Toronto, 1985.
  7291. ftp: watserv1.waterloo.edu:languages/apl/sharp.apl
  7292.  
  7293. SHEEP - Symbolic math, especially tensor analysis and General Relativity. 
  7294. Inge Frick, Stockholm, late 70's to early 80's.  Implemented in DEC-10
  7295. assembly language, then in several LISPs.  Current version for Sun-3, based
  7296. on Portable Standard LISP.
  7297. info: Tevian Dray <tevian@math.ors.edu>
  7298.  
  7299. SHELL - Early system on Datatron 200 series.  Listed in CACM 2(5):16 (May
  7300. 1959).
  7301.  
  7302. Short Code or SHORTCODE - John Mauchly, 1949.  Pseudocode interpreter for
  7303. math problems, on Eckert and Mauchly's BINAC, later on UNIVAC I and II. 
  7304. Possibly the first attempt at a higher level language.  Sammet 1969, p.129.
  7305.  
  7306. Show-And-Tell - Visual dataflow language designed for use by elementary
  7307. school children.  "A Visual Language for Keyboardless Programming", T.
  7308. Kimura et al, TR WUCS-86-6, CS Dept Washington U, Mar 1986.  "Show and
  7309. Tell: A Visual Language", T.D. Kimura et al in Visual Programming
  7310. Environments: Paradigms and Systems, E.P. Glinert ed, IEEE Comp Sci Press,
  7311. 1990, pp.397-404.
  7312.  
  7313. SICStus Prolog - SICS (Swedish Inst of Comp Sci), Sweden.
  7314. info: sicstus-request@sics.se
  7315. list: sicstus-users@sics.se
  7316.  
  7317. SIFT - SHARE Internal FORTRAN Translator.  Translation utility designed for
  7318. converting FORTRAN II to FORTRAN IV.  The word "sift" was often used as a
  7319. verb to describe converting code from one language to another.  Sammet
  7320. 1969, p.153.
  7321.  
  7322. Sig - Signal Processing, Analysis, and Display program.  This is an
  7323. environment with an associated programming language. Jan Carter, Argonne
  7324. Natl Lab, (312)972-7250.
  7325.  
  7326. SIGLA - SIGma LAnguage.  Olivetti.  Language for industrial robots. 
  7327. "SIGLA: The Olivetti Sigma Robot Programming Language", M. Salmon, Proc 8th
  7328. Intl Symp on Industrial Robots, 1978, pp.358-363.
  7329.  
  7330. SIGNAL - Synchronous language.  Le Guernic et al, INRIA.  "SIGNAL - A Data
  7331. Flow-Oriented Language for Signal Processing," P. le Guernic, IEEE Trans
  7332. Acoustics Speech & Signal Proc, ASSP-34(2):362-374 Apr 1986.
  7333.  
  7334. SIL - "SIL - A Simulation Language", N. Houbak, LNCS 426, Springer 1990.
  7335.  
  7336. Sil/2 - Language for implementation of portable interpreters.  "The Design
  7337. of Transportable Interpreters", F. Druseikis, SNOBOL4 Project Document
  7338. S4D49, U Arizona (Feb 1975).
  7339.  
  7340. Silage - Synchronous DSP specification language.  "Silage Reference Manual,
  7341. Draft 1.0", D.R. Genin & P.N. Hilfinger,  Silvar-Lisco, Leuven 1989.
  7342.  
  7343. Simone - A. Hoare et al.  Simulation language based on Pascal. 
  7344. "Quasiparallel Programming", W.H. Kaubisch et al, Soft Prac & Exp 6:341-356
  7345. (1976).
  7346.  
  7347. SIMPLE - Early system on Datatron 200 series.  Listed in CACM 2(5):16 (May
  7348. 1959).
  7349.  
  7350. SIMPL-T - Base language for a family of languages and compilers. 
  7351. "SIMPL-T, A Structured Programming Language", V.R. Basili, Paladin House
  7352. 1976.
  7353.  
  7354. SIMSCRIPT - Rand Corp 1963.  Large discrete simulations, influenced Simula. 
  7355. "SIMSCRIPT: A Simulation Programming Language", P.J. Kiviat et al, CACI
  7356. 1973.  Versions: SIMSCRIPT I.5, SIMSCRIPT II, SIMSCRIPT II.5.  CACI,
  7357. (619)457-9681.
  7358.  
  7359. SIMULA - SIMUlation LAnguage.  Kristen Nygaard & Ole-Johan Dahl, designed
  7360. 1962, implemented 1964.  Extension to ALGOL for discrete simulation. 
  7361. Sammet 1969, p.659.
  7362.  
  7363. SIMULA 67 - Introduced the class concept, leading the way to data
  7364. abstraction and object-oriented programming.  Also coroutines.  Simula
  7365. a.s., Postboks 4403 - Torshov, N-0402 Oslo 4, Norway, versions for DOS,
  7366. OS/2 and UNIX/386.
  7367. ftp: rascal.ics.utexas.edu, Mac version
  7368.  
  7369. Simulating Digital Systems - FORTRAN-like language for describing computer
  7370. logic design.  Sammet 1969, p.622.
  7371.  
  7372. SINA - "An Implementation of the Object-Oriented Concurrent Programming
  7373. Language SINA", A. Tripathi et al, Soft Prac & Exp 19(3):235-256 (1989).
  7374.  
  7375. SIPLAN - SIte PLANning computer language.  Interactive language for space
  7376. planning.  "Formal Languages for Site Planning", C.I. Yessios in Spatial
  7377. Synthesis for Computer-Aided Design, C. Eastman ed, Applied Science Publ
  7378. 1976.
  7379.  
  7380. Siprol - Signal Processing Language.  A DSP language.  "SIPROL: A High
  7381. Level Language for Digital Signal Processing", H. Gethoffer, Proc
  7382. ICASSP-80, 1980, pp.1056-1059.
  7383.  
  7384. SIR - Early system on IBM 650.  Listed in CACM 2(5):16 (May 1959).
  7385.  
  7386. Siri - Horn <Bruce.Horn@n3.sp.cs.cmu.edu>, CMU 1991.  Object-oriented
  7387. constraint language using a single abstraction mechanism.  A conceptual
  7388. blend of BETA and Bertrand.  Similar to Kaeidoscope.  "Constraint Patterns
  7389. as a Basis for Object-Oriented Constraint Programming", B. Horn, OOPSLA '92
  7390. (Sept 1992).
  7391.  
  7392. SISAL - Streams and Iteration in a Single Assignment Language.  James
  7393. McGraw et al, U Manchester, Lawrence Livermore, DEC and CSU 1983.  Single
  7394. assignment language with strict semantics, automatic parallelization,
  7395. efficient execution.  Outputs a dataflow graph in IF1 (Intermediary Form
  7396. 1).  Derived from VAL, adds recursion and finite streams.  Pascal-like
  7397. syntax.  Designed to be a common high-level language for numerical programs
  7398. on a variety of multiprocessors.  "A Report on the SISAL Language Project",
  7399. J.T. Feo et al, J Parallel and Distrib Computing 10(4):349-366 (Dec 1990). 
  7400. Implementations exist for Cray X-MP, Y-MP, Cray-2, Sequent, Encore Alliant,
  7401. dataflow architectures, transputers and systolic arrays.
  7402. contact: David Cann <cann@lll-crg.llnl.gov>, Rod Oldehoeft
  7403. <rro@cs.colostate.edu>.
  7404. ftp: sisal.llnl.gov:pub/sisal
  7405.  
  7406. Sketchpad - I. Sutherland, 1963.  Computer-aided design.  Constraints using
  7407. value inference.  Introduced the "ring" list structure.  "Sketchpad: A Man-
  7408. Machine Graphical Communication System", I.E. Sutherland, MIT Lincoln Lab,
  7409. TR 296 (Jan 1963).  Sammet 1969, p.678.
  7410.  
  7411. Skim - Alain Deutsch <deutsch@poly.polytechnique.fr> et al, France.  Scheme
  7412. implementation with packages and other enhancements.
  7413.  
  7414. SKOL - FORTRAN pre-processor for COS (Cray Operating System).
  7415.  
  7416. SL5 - String and list processing language with expression-oriented syntax. 
  7417. Coroutines.  "An Overview of SL5", Ralph E. Griswold, SIGPLAN Notices
  7418. 12(4):40-50 (Apr 1977).
  7419.  
  7420. SLANG - 
  7421.  
  7422.   1. R.A. Sibley.  CACM 4(1):75-84 (Jan 1961).
  7423.  
  7424.   2. Set LANGuage.  Jastrzebowski, ca 1990.  A C extension with set-
  7425. theoretic data types and garbage collection.  "The SLANG Programming
  7426. Language Reference Manual, Version 3.3", W. Jastrzebowski
  7427. <wojtek@loml.math.yale.edu>, 1990.
  7428.  
  7429.   3. Structured LANGuage.  Michael Kessler, IBM.  A language based on
  7430. structured programming macros for IBM 370 assembly language.  "Project
  7431. RMAG: SLANG (Structured Language) Compiler", R.A. Magnuson, NIH-
  7432. DCRT-DMB-SSS-UG105, NIH, DHEW, Bethesda, MD 20205 (1980).
  7433.  
  7434.   4. "SLANG: A Problem Solving Language for Continuous-Model Simulation and
  7435. Optimization", J.M. Thames, Proc 24th ACM Natl Conf 1969.
  7436.  
  7437.   5. Embedded language in the JED editor.
  7438. info: John E. Davis <davis@amy.tch.harvard.edu>
  7439.  
  7440. SLIM - A VLSI language for translating DFA's into circuits.  J.L. Hennessy,
  7441. "SLIM: A Simulation and Implementation Language for VLSI Microcode",
  7442. Lambda, Apr 1981, pp.20-28.
  7443.  
  7444. SLIP - Symmetric LIst Processsor.  J. Weizenbaum, early-60's.  List
  7445. processing subroutine package for FORTRAN, later also embedded in MAD and
  7446. ALGOL.  "Symmetric List Processor", J. Weizenbaum CACM 6:524-544(1963). 
  7447. Sammet 1969, p.387.
  7448.  
  7449. SLIPS - "An Interpreter for SLIPS - An Applicative Language Based on
  7450. Lambda-Calculus", V. Gehot et al, Comp Langs 11(1):1-14 (1986).
  7451.  
  7452. SLLIC - Intermediate language developed at HP.  An infinite-register
  7453. version of the Precision Architecture instruction set?
  7454.  
  7455. Sloop - "Parallel Programming in a Virtual Object Space", S. Lucco, SIGPLAN
  7456. Notices 22(12):26-34 (OOPSLA '87) (Dec 1987).
  7457.  
  7458. SMALGOL - SMall ALGOL.  Subset of ALGOL 60.  "SMALGOL-61", G.A. Bachelor et
  7459. al CACM 4(11):499-502 (Nov 1961).  Sammet 1969.
  7460.  
  7461. SMALL - 
  7462.  
  7463.   1. Functional, lazy, untyped.  "SMALL - A Small Interactive Functional
  7464. System", L. Augustsson, TR 28, U Goteborg and Chalmers U, 1986.
  7465.  
  7466.   2. A toy language used to illustrate denotational semantics.  "The
  7467. Denotational Description of Programming Languages", M.J.C. Gordon, Springer
  7468. 1979.
  7469.  
  7470. Small-C - A subset of C.  Compiler source in C producing 8080 code in Dr
  7471. Dobb's J, May 1980 and Dec 1982.  "The Small-C Handbook," James Hendrix,
  7472. Reston 1984.
  7473. ftp: apple.com:ArchiveVol1/unix_lang
  7474.  
  7475. Smalltalk - Software Concepts Group, Xerox PARC, led by Alan Kay, early
  7476. 70's.  Took the concepts of class and message from Simula-67 and made them
  7477. all-pervasive, the quintessential object-oriented language.  Innovations
  7478. included the bitmap display, windowing system and use of mouse.  Early
  7479. versions: Smalltalk-72, Smalltalk-74, Smalltalk-76 (inheritance taken from
  7480. Simula, and concurrency), and Smalltalk-78.  "The Smalltalk-76 Programming
  7481. System Design and Implementation", D.H. Ingalls, 5th POPL, ACM 1978, pp.9-
  7482. 16.
  7483.  
  7484. Smalltalk-80 - "Smalltalk-80: The Language and Its Implementation" ("The
  7485. Blue Book"), Adele Goldberg et al, A-W 1983.  BYTE 6(8) (Aug 1981).
  7486. archive: st.cs.uiuc.edu:pub/ISA
  7487. ftp: prep.ai.mit.edu:pub/gnu  GNU Smalltalk v1.1
  7488. archive: st.cs.uiuc.edu:pub/MANCHESTER
  7489. mail server: goodies-lib@r5.cs.man.ac.uk
  7490.  
  7491. Smalltalk/V - First widely available version of Smalltalk, for PC, Mac. 
  7492. Digitalk, 1986.
  7493.  
  7494. SmallWorld - Object-oriented language.  "SW 2 - An Object-based Programming
  7495. Environment", M.R. Laff et al, IBM TJWRC, 1985.
  7496.  
  7497. SMART - For MS-DOS?
  7498.  
  7499. SMIL - Machine language for a Swedish computer.
  7500. ftp: wuarchive.wustl.edu:mirrors/info-mac/lang/smil-emulator.hqx
  7501.  
  7502. SML - 
  7503.  
  7504.  1. Standard ML.  R. Milner <rm@lfcs.edinburgh.ac.uk> ca. 1984.  Aimed to
  7505. unify the dialects of ML, has evolved into a robust general-purpose
  7506. language.  Functional, with imperative features.  Environment based,
  7507. strict.  Adds to ML the call-by-pattern of Hope, recursive data types,
  7508. reference types, typed exceptions, and modules.  (The "core" language
  7509. excludes the modules.)  "A Proposal for Standard ML", R. Milner, ACM Symp
  7510. on LISP and Functional Prog 1984, pp.184-197.
  7511. Implementations:
  7512.   SML/NJ - Standard ML of New Jersey, Version 0.75 ftp: cs.yale.edu:pub/ml
  7513. and research.att.com:dist/ml
  7514.   POPLOG ML - U Sussex.  For the Poplog system.
  7515.   Poly/ML - Implemented in Poly[1], for MC68020 and SPARC.  Abstract
  7516. Hardware Ltd <ahl@ahl.co.uk>.
  7517.   Edinburgh SML - Core language only.  Byte-code interpreter in C.
  7518. info: <lfcs@ed.ac.uk>
  7519. ftp: ftp.informatik.uni-muenchen.de:/pub/sml/ibmpc   EdML V 0.44
  7520.   ANU ML - Aust Natl U.  For MC68020, VAX and Pyramid.
  7521.   Micro ML - U Umea, Sweden.  Interpreter of an ML subset, for MS-DOS.
  7522. list: sml-request@cs.cmu.edu
  7523. ftp: sbcs.sunysb.edu, a lazy version
  7524.   sml2c - portable, written in SML.  Language extensions include first-
  7525. class continuations, asynchronous signal handling.
  7526. info: <david.tarditi@cs.cmu.edu>
  7527. ftp: dravido.soar.cs.cmu.edu:/usr/nemo/sml2c:sml2c.tar.Z
  7528.  
  7529.   2. Small Machine Language.  Barnes, ICI 1969.  Real-time language, an
  7530. ALGOL variant, and the predecessor of RTL.  "SML User's Guide", J.G.P.
  7531. Barnes, ICI, TR JGPB/69/35 (1969).
  7532.  
  7533. SML/NJ - Standard ML of New Jersey.  An implementation of SML by Andrew
  7534. Appel at Princeton <Appel@princeton.edu> and Dave MacQueen at AT&T
  7535. <dbm@research.att.com>.  "Standard ML of New Jersey", A. Appel et al, "Proc
  7536. Third Intl Symp on Prog Lang Impl and Logic Programming", LNCS Springer
  7537. 1991.  Versions for Unix, Mac
  7538. ftp: research.att.com
  7539.     
  7540. SMoLCS - Specification metalanguage used for a formal definition of Ada. 
  7541. "An Introduction to the SMoLCS Methodology", E. Astesiano, U Genova 1986.
  7542.  
  7543. SMP - Steven Wolfram's earlier symbol manipulation program, before he
  7544. turned to Mathematica.  "SMP Handbook", C. Cole, S. Wolfram et al, Caltech
  7545. 1981.
  7546.  
  7547. SNAP - 
  7548.  
  7549.   1. Early interpreted text-processing language for beginners, close to
  7550. basic English.  "Computer Programming in English", M.P. Barnett, Harcourt
  7551. Brace 1969.
  7552.  
  7553.   2. "Some Proposals for SNAP, A Language with Formal Macro Facilities",
  7554. R.B. Napper, Computer J 10(3):231-243 (1967). [same as 1?]
  7555.  
  7556. SNOBOL - StriNg Oriented symBOlic Language.  David Farber, Ralph Griswold &
  7557. I. Polonsky, Bell Labs 1962-3.  String processing language for text and
  7558. formula manipulation.  "SNOBOL, A String Manipulating Language", R.
  7559. Griswold et al, J ACM 11(1):21 (Jan 1964).
  7560.  
  7561. SNOBOL3 - 1965.  SNOBOL with user-defined functions.  "The SNOBOL3
  7562. Programming Language", D.J. Farber et al, Bell Sys Tech J 45(6):895-944
  7563. (Jul 1966).
  7564.  
  7565. SNOBOL4 - Griswold et al, 1967.  Quite distinct from its predecessors. 
  7566. Declarative with dynamic scope.  Patterns are first-class data objects that
  7567. can be constructed by concatenation and alternation.  Success and failure
  7568. used for flow control.  Delayed (unevaluated) expressions can be used to
  7569. implement recursion.  Table data type.  Strings generated at run-time can
  7570. be treated as programs and executed.  "The SNOBOL4 Programming Language",
  7571. Ralph E. Griswold et al, P-H 1971.
  7572. ftp: apple.com:ArchiveVol1/unix_lang
  7573.  
  7574. FASBOL - "FASBOL. A SNOBOL4 Compiler", P.J. Santos, Memo ERL-M134, UC
  7575. Berkeley 1971.
  7576.  
  7577. SITBOL - "SITBOL Version 3.0", J.F. Gimpel, TRS4D30b, Bell Labs 1973.
  7578.  
  7579. SNOOPS - Craske, 1988.  An extension of SCOOPS with meta-objects that can
  7580. redirect messages to other objects.  "SNOOPS: An Object-Oriented language
  7581. Enhancement Supporting Dynamic Program Reeconfiguration", N. Craske,
  7582. SIGPLAN Notices 26(10): 53-62 (Oct 1991).
  7583.  
  7584. SO 2 - Early system on IBM 701.  Listed in CACM 2(5):16 (May 1959).
  7585.  
  7586. SOAP - Symbolic Optimal Assembly Program.  IBM 650 assembly language. 
  7587. "Optimal" refers to rearranging instructions on slowly rotating drum
  7588. memory.  Listed in CACM 2(5):16 (May 1959). Versions: SOAP I, SOAP II, CASE
  7589. SOAP III.
  7590.  
  7591. SOAR - State, Operator And Result.  A. Newell, early 80's.  A general
  7592. problem-solving production system architecture, intended as a model of
  7593. human intelligence.  Originally implemented in LISP and OPS5, currently in
  7594. Common Lisp.  "Soar: An Architecture for General Intelligence", J.E. Laird
  7595. et al, Art Intell 33(1) (1987).  Version: Soar6
  7596. info: soar@cs.cmu.edu
  7597. doc: soar-doc@cs.cmu.edu
  7598.  
  7599. SOCRATIC - [Not a language?]  Bolt, Beranek & Newman.  Early interactive
  7600. learning system.  Sammet 1969, p.702.
  7601.  
  7602. SODAS - D.L. Parnas & J.A. Darringer.  Proc FJCC 31:449-474, AFIPS (Fall
  7603. 1967).
  7604.  
  7605. SOHIO - Early system on IBM 705.  Listed in CACM 2(5):16 (May 1959).
  7606.  
  7607. SOL - 
  7608.  
  7609.   1. Simulation Oriented Language.  Discrete simulation.  Sammet 1969,
  7610. p.656.
  7611.  
  7612.   2. Second-Order Lambda calculus.  A typed lambda calculus.  "Abstract
  7613. Types have Existential Type", J. Mitchell et al, 12th POPL, ACM 1985,
  7614. pp.37-51.
  7615.  
  7616. Solve - Parallel object-oriented language.  "Message Pattern
  7617. Specifications: A New Technique for Handling Errors in Parallel Object-
  7618. Oriented Systems", J.A. Purchase et al, SIGPLAN Notices 25(10):116-125
  7619. (OOPSLA/ECOOP '90) (Oct 1990).
  7620.  
  7621. SP - Simplicity and Power.  Prolog-like.  "Simplicity and Power -
  7622. Simplifying Ideas in Computing", J.G. Wolff, Computer J 33(6):518-534 (Dec
  7623. 1990).
  7624.  
  7625. SPADE - Specification Processing And Dependency Extraction.  Specification
  7626. language.  G.S. Boddy, ICL Mainframes Div, FLAG/UD/3DR.003
  7627.  
  7628. SPAR - Early system on Datatron 200 series.  Listed in CACM 2(5):16 (May
  7629. 1959).
  7630.  
  7631. SPARKS - FORTRAN superset, used in Fundamentals of Data Structures, E.
  7632. Horowitz & S. Sahni, Computer Science Press 1976.
  7633.  
  7634. Speakeasy - Simple array-oriented language with numerical integration and
  7635. differentiation, graphical output, aimed at statistical analysis. 
  7636. "Speakeasy", S. Cohen, SIGPLAN Notices 9(4), (Apr 1974).  "Speakeasy-3
  7637. Reference Manual", S. Cohen et al. 1976.
  7638.  
  7639. Spec - Specification language.  Expresses black-box interface
  7640. specifications for large distributed systems with real-time constraints. 
  7641. It incorporates conceptual models, inheritance and the event model.  A
  7642. descendant of MSG.84.  "An Introduction to the Specification Language
  7643. Spec", V. Berzins et al, IEEE Software 7(2):74-84 (Mar 1990).
  7644.  
  7645. SPECIAL - SRI specification language.  [HDM?]  "SPECIAL - A Specification
  7646. and Assertion Language", L. Robinson et al, TR CSL-46, SRI, Jan 1987.
  7647.  
  7648. SPECOL - "SPECOL - A Computer Enquiry Language for the Non-Programmer",
  7649. B.T. Smith, Computer J 11:121 (1968).
  7650.  
  7651. SPEED - Early system on LGP-30.  Listed in CACM 2(5):16 (May 1959).
  7652.  
  7653. Speedcoding - John Backus, 1953.  A pseudocode interpreter for math on IBM
  7654. 701, IBM 650.  Sammet 1969, p.130.
  7655.  
  7656. Speedcoding 3 - Listed in CACM 2(5):16 (May 1959).
  7657.  
  7658. SPEEDEX - Early system on IBM 701.  Listed in CACM 2(5):16 (May 1959).
  7659.  
  7660. SP/k - Subset PL/I, k=1..8.  A series of PL/I subsets, simplified for
  7661. student use.  "SP/k: A System for Teaching Computer Programming", R.C. Holt
  7662. et al, CACM 20(5):301-309 (May 1977).
  7663.  
  7664. SPG - System Program Generator.  A compiler-writing language.  "A System
  7665. Program Generator", D. Morris et al, Computer J 13(3) (1970).
  7666.  
  7667. SPIT - Language for IBM 650.  (See IT).
  7668.  
  7669. SPITBOL - SPeedy ImplemenTation of snoBOL.  "Macro SPITBOL - A SNOBOL4
  7670. Compiler", R.B.K. Dewar et al, Soft Prac & Exp 7:95-113, 1971.  Current
  7671. versions: SPITBOL-68000, Sparc SPITBOL from Catspaw Inc, (719)539-3884.
  7672.  
  7673. SPL -
  7674.  
  7675.   1. Synchronous Programming Language.  A DSP language.  "Introduction to
  7676. the SPL Compiler", Computalker Consultants, 1986.
  7677.  
  7678.   2. Space Programming Language.  For spaceflight and aerospace software. 
  7679. Similar to JOVIAL.  Aka SPL/J6.  A subset is known as CLASP.  "Space
  7680. Programming Language Development", SAMSO TP 70-325, System Development Corp
  7681. (Sep 1970).
  7682.  
  7683.   3. System Programming Language.  HP, 1977.  An ALGOL-like language for
  7684. the HP3000 computer allowing inline assembly code.  MPE, the OS for the
  7685. HP3000 was written in SPL.  Pub.No.30000-90024, HP.
  7686.  
  7687.   4. Systems Programming Language.  PRIME Computer, 80's.  A variant of
  7688. PL/I used on PRIME computers.  PL/I subset G, less I/O plus a few
  7689. extensions.  SPL User's Reference Guide, Prime.  (See PL/P.)
  7690.  
  7691. SPLash! - 
  7692.  
  7693.   1. Software Research Northwest, 1987.  Compiler for SPL[3].
  7694.  
  7695.   2. Systems Programming LAnguage for Software Hackers.  Mentioned in TeX
  7696. for the Impatient, Paul W. Abrahams, A-W 1990.
  7697.  
  7698. SPL/I - Signal Processing Language I.  Intermetrics.  General language
  7699. designed for acoustic signal processing.  Graphics and multiprocessing
  7700. features.  "SPL/I Language Reference Manual", M.S. Kosinski, Intermetrics
  7701. Report 172-1 (July 1976).
  7702.  
  7703. SPLINTER - PL/I interpreter with debugging features.  Sammet 1969, p.600.
  7704.  
  7705. SPLX - Specification Language for Parallel cross-product of processes and
  7706. sequential modules.  "Parallel Module Specification on SPLX", C.F. Nourani,
  7707. SIGPLAN Notices 27(1):114-115 (Jan 1992).
  7708.  
  7709. Spool - Object-oriented logic.  "An Experience with a Prolog Based
  7710. Language", K. Fukunaga et al, SIGPLAN Notices 21(11):224-231 (Nov 1986)
  7711. (OOPSLA '86).
  7712.  
  7713. SPRING - String PRocessING language.  "From SPRING to SUMMER: Design,
  7714. Definition and Implementation of Programming Languages for String
  7715. Manipulation and Pattern Matching", Paul Klint, Math Centre, Amsterdam
  7716. 1982.
  7717.  
  7718. SPRINT - List processing language involving stack operations.  "SPRINT - A
  7719. Direct Approach to List Processing Languages", C.A. Kapps, Proc SJCC 30
  7720. (1967).  Sammet 1969, p 462.
  7721.  
  7722. SPS - Symbolic Programming System.  Assembly language for IBM 1620.
  7723.  
  7724. SPSS - Statistical Programs for the Social Sciences.  "SPSS X User's
  7725. Guide", SPSS Inc. 1986.
  7726.  
  7727. SPUR - Early system on IBM 650.  Listed in CACM 2(5):16 (May 1959).
  7728.  
  7729. SQL - Structured Query Language.  IBM, 1970's, for use in System R.  The de
  7730. facto standard relational database interface language, often embedded in
  7731. other programming languages.  "A Guide to the SQL Standard," C.J. Date, A-W
  7732. 1987.
  7733.  
  7734. Square - Query language, precursor to SQL.  "Specifying Queries as
  7735. Relational Expressions: The SQUARE Data Sublanguage", R.E. Boyce et al,
  7736. CACM 18(11):621-628 (Nov 1975).
  7737.  
  7738. Squeak - "Squeak: A Language for Communicating with Mice", L. Cardelli et
  7739. al, Comp Graphics 19(3):199-204 (July 1985) (See Newsqueak).
  7740.  
  7741. SR - Synchronizing Resources.  A programming language for distributed
  7742. systems.  A 'resource' is the encapsulation of a process and its variables
  7743. in two parts: specification and body.  Processes interact via the
  7744. rendezvous, in which one calls an 'operation' in the other.  The call can
  7745. be either blocking or nonblocking.  The operation names can be changed
  7746. dynamically.  "An Overview of the SR Language and Implementation", G.
  7747. Andrews, ACM TOPLAS 10:51-86 (Jan 1988).  "The SR Programming Language:
  7748. Concurrency in Practice", G.R. Andrews et al, Benjamin/Cummings 1993, ISBN
  7749. 0-8053-0088-0.
  7750.  
  7751. ftp: cs.arizona.edu, watserv1.waterloo.edu.
  7752.  
  7753. SRC Modula-3 - From DEC/SRC, Palo Alto, CA.  "Modula-3 Report (revised)"
  7754. Luca Cardelli et al.
  7755. ftp: gatekeeper.dec.com
  7756.  
  7757. SRDL - Small algebraic specification language, allows distfix operators. 
  7758. "A Constructive Method for Abstract Algebraic Software Specification", H.
  7759. Klaeren, Theor Computer Sci 30, pp.134-204, 1984.
  7760.  
  7761. Srl -
  7762.  
  7763.   1. Bharat Jayaraman.  "Towards a Broader Basis for Logic Programming", B.
  7764. Jayaraman, TR CS Dept, SUNY Buffalo, 1990.
  7765.  
  7766.   2. Schema Representation language.  "SRL/2 Users Manual", J.M. Wright et
  7767. al, Robotics Inst, CMU, 1984.
  7768.  
  7769.   3. Structured Robot Language.  C. Blume & W. Jacob, U Karlsruhe.
  7770.  
  7771. SSL - 
  7772.  
  7773.   1. Synthesizer Specification Language.  The definition language for the
  7774. Cornell Program Synthesizer Generator.  "Generating Language Based
  7775. Environments", T. Reps, MIT Press 1984.
  7776.  
  7777.   2. Syntax Semantic Language.  R.C. Holt & J. Cordy.  A specification
  7778. language for recursive descent parsers.  "An Introduction to S/SL:
  7779. Syntax/Semantic Language", R.C. Holt et al, ACM TOPLAS 4(2):149-178 (Apr
  7780. 1982).
  7781. ftp: ftp.cs.toronto.edu:pub/ssl.tar.Z
  7782.  
  7783. STAB-11 - "The Translation and Interpretation of STAB-11", A.J.T. Colin et
  7784. al, Soft Prac & Exp 5(2):123-138 (Apr 1975).
  7785.  
  7786. STAGE2 - Macro language.
  7787.  
  7788. Standard ML - See SML.
  7789.  
  7790. STAR 0 - Early system on Datatron 200 series.  Listed in CACM 2(5):16 (May
  7791. 1959).
  7792.  
  7793. StarLISP - See *LISP.
  7794.  
  7795. StarMOD - See *MOD.
  7796.  
  7797. Steelman - DoD, 1979.  Fifth and last of the series of DoD requirements
  7798. that led to Ada.  "Requirements for High Order Programming Languages,
  7799. 'Steelman'", June 1978.  SIGPLAN Notices 13(12) (Dec 1978).  (See Strawman,
  7800. Woodenman, Tinman, Ironman).
  7801.  
  7802. STENSOR - L. Hornfeldt, Stockholm, mid-80's.  Symbolic math, especially
  7803. General Relativity.  Implemented on top of SHEEP and MACSYMA.
  7804.  
  7805. Sticks&Stones - Hardware description language.  Functional, polymorphic,
  7806. loosely based on ML.  "An Algebraic Approach to Hardware Description and
  7807. Verification", L. Cardelli, Thesis, Edinburgh U, 1982.  "Sticks&Stones II:
  7808. A Functional Language VLSI Layout Generation Tool", Andrew Butterfield
  7809. <butrfeld@cs.tcd.ie>, Thesis, Trinity College, 1990.
  7810.  
  7811. STIL - STatistical Interpretive Language.  "STIL User's Manual", C.F.
  7812. Donaghey et al, Indust Eng Dept, U Houston (Aug 1969).
  7813.  
  7814. STOIC - STring Oriented Interactive Compiler.  Smithsonian Astrophysical
  7815. Observatory.  Similar to FORTH for strings, includes many VAX-specific
  7816. items.
  7817.  
  7818. Stoneman - HOLWG, DoD, Feb 1980.  DoD requirements that led to APSE, the
  7819. Ada Programming Support Environment.
  7820.  
  7821. STP4 - Statistical language.
  7822.  
  7823. Strand - 
  7824.  
  7825.   1. AND-parallel logic programming language.  Essentially flat Parlog83
  7826. with sequential-and and sequential-or eliminated.  "Strand: New Concepts on
  7827. Parallel Programming", Ian Foster et al, P-H 1990.  Strand88, available
  7828. commerically from Strand Software, Beaverton, OR.
  7829. info: strand88@sstl.co.uk
  7830.  
  7831.   2. Query language, implemented on top of INGRES (an RDBMS).  "Modelling
  7832. Summary Data", R. Johnson, Proc ACM SIGMOD Conf 1981.
  7833.  
  7834. Strawman - HOLWG, DoD, 1975.  The first of the series of DoD requirements
  7835. that led to Ada.  (See Woodenman, Tinman, Ironman, Steelman).
  7836.  
  7837. STREAM - "STREAM: A Scheme Language for Formally Describing Digital
  7838. Circuits", C.D. Kloos in PARLE: Parallel Architectures and Languages
  7839. Europe, LNCS 259, Springer 1987.
  7840.  
  7841. STRESS - STRuctual Engineering Systems Solver.  Structural analysis
  7842. problems in Civil Engineering.  Superceded by STRUDL.  "STRESS: A User's
  7843. Manual", S.J. Fenves et al, MIT Press 1964.  Sammet 1969, p.612.
  7844.  
  7845. STROBES - Shared Time Repair of Big Electronic Systems.  Computer testing. 
  7846. Sammet 1969, p.699.
  7847.  
  7848. STRUDL - STRUctured Design Language.  Dynamic and finite-element analysis,
  7849. steel and concrete structures.  Subsystem of ICES.  "ICES STRUDL-II
  7850. Engineering User's Manual", R68-91, CE Dept MIT (Nov 1968) Sammet 1969,
  7851. p.613.
  7852.  
  7853. STSC APL - Implementation of APL by Scientific Time-Sharing Corp.
  7854.  
  7855. STUDENT - D.G. Bobrow 1964.  Early query system.  Sammet 1969, p.664.
  7856.  
  7857. SuccessoR - Language for distributed computing derived from SR. 
  7858. "SuccessoR: Refinements to SR", R.A. Olsson et al, TR 84-3, U Arizona 1984.
  7859.  
  7860. SUGAR - Westfield College, U London.  Simple lazy functional language used
  7861. in Principles of Functional Programming, Hugh Glaser et al, P-H 1984.
  7862.  
  7863. SUIF - Stanford University Intemediate Format.  Register-oriented
  7864. intermediate language.
  7865.  
  7866. SUMMER - Klint & Sint, CWI late 70's.  String manipulation and pattern
  7867. matching.  Recently used as the input and implementation language for the
  7868. Dataflow Compiler Project at CWI.  "An Overview of the SUMMER Programming
  7869. Language", Paul Klint, 7th POPL, ACM 1980, pp.47-55.
  7870.  
  7871. SUMMER SESSION - Early system on MIT's Whirlwind.  Listed in CACM 2(5):16
  7872. (May 1959).
  7873.  
  7874. SUPER - Successor to LOGLISP, based on LNF.  "New Generation Knowledge
  7875. Processing: Final Report on the SUPER System", J Alan Robinson et al, CASE
  7876. Center TR 8707, Syracuse U, 1987.
  7877.  
  7878. SUPERMAC - General-purpose macro language, embeddable in existing languages
  7879. as a run-time library.  "SUPERMAC - A Macro Facility That can be Added to
  7880. Existing Compilers", P.J. Brown, Soft Prac & Exp 10(6):431-434.
  7881.  
  7882. Super Pascal - Pascal variant used in Data Structures and Algorithms, A.
  7883. Aho, Hopcroft & Ullman, A-W 1983.  Adds nonnumeric labels, return
  7884. statement, expressions as names of types.
  7885.  
  7886. SuperTalk - Silicon Beach Software.  A superset of HyperTalk used in
  7887. SuperCard.
  7888.  
  7889. Sure - Bharat Jayaraman.  "Towards a Broader Basis for Logic Programming",
  7890. B. Jayaraman, TR CS Dept, SUNY Buffalo, 1990.
  7891.  
  7892. SURGE - Sorter, Updater, Report Generator, Etc.  IBM 704, 1959.  Sammet
  7893. 1969, p.8.
  7894.  
  7895. SweetLambda - Sugared lambda-calculus?
  7896.  
  7897. SYGMA - "SYGMA, A Symbolic Generator and Macroassembler", A.P. Ershov et
  7898. al, in Symbol Manipulation Languages and Techniques, D.G. Bobrow ed, N-H
  7899. 1968, pp.226-246.
  7900.  
  7901. Sylvan - [Distributed language?]
  7902.  
  7903. SYMBAL - SYMbolic ALgebra.  Max Engeli, late 60's.  Symbolic math language
  7904. with ALGOL-like syntax.  Implemented for CDC6600.  "User's Manual for the
  7905. Formula Manipulation Language SYMBAL", M. Engeli, TRM-8.00, Comp Ctr UT
  7906. Austin, June 1968.
  7907.  
  7908. SymbMath - Small symbolic math package for MS-DOS.  Has the ability to
  7909. learn new facts.  Version 2.1.1
  7910. ftp: simtel20:calculator/sm14a.zip
  7911.  
  7912. SYMBOLANG - Lapidus & Goldstein, 1965.  Symbol manipulating FORTRAN
  7913. subroutine package for IBM 7094, later CDC6600.  "Some Experiments in
  7914. Algebraic Manipulation", CACM 8:501-508 (1965).
  7915.  
  7916. SYMBOLIC ASSEMBLY - Early system on IBM 705.  Listed in CACM 2(5):16 (May
  7917. 1959).
  7918.  
  7919. Symbolic Mathematical Laboratory - On-line system under CTSS for symbolic
  7920. math.  Used display screen and light pen.  Sammet 1969, p.514.
  7921.  
  7922. Symmetric LISP - A parallel LISP in which environments are first-class
  7923. objects.  Implemented in Common LISP.  "Parallelism, Persistence and Meta-
  7924. Cleanliness in the Symmetric Lisp Processor", D. Gelernter et al, SIGPLAN
  7925. Notices 22(7):274-282 (July 1987).
  7926.  
  7927. SYMPL -  SYsteMs Programming Language.  CDC.  A derivative of Jovial. 
  7928. Non-reentrant block structured language with extensive bit manipulation
  7929. facilities and linkable with FORTRAN.  Major parts of CDC systems during
  7930. the 70's were written in SYMPL.
  7931.  
  7932. T - 
  7933.  
  7934.   1. True.  Rees, 1982.  LISP dialect with static scope, a near-superset of
  7935. Scheme.  "The T Manual", Johnathan A. Rees <jar@zurich.ai.mit.edu> et al,
  7936. Yale U, 1984.  Maintained by David Kranz <kranz@masala.lcs.mit.edu>.
  7937. ftp: ftp.ai.mit.edu:pub/systems/t3.1    Unix source
  7938.  
  7939.   2. Functional.  "T: A Simple Reduction Language Based on Combinatory Term
  7940. Rewriting", Ida et al, Proc of Prog Future Generation Computers, 1988.
  7941.  
  7942. TABLET - Query language.  "Human Factor Comparison of a Procedural and a
  7943. Non-procedural Query Language", C. Welty et al, ACM Trans Database Sys
  7944. 6(4):626-649 (Dec 1981).
  7945.  
  7946. TABSOL - T.F. Kavanaugh.  Early system oriented language.  Proc FJCC
  7947. 18:117-136, AFIPS (Fall 1960).  (See GECOM).
  7948.  
  7949. TAC - Translator Assembler-Compiler.  For Philco 2000.
  7950.  
  7951. TACL - Tandem Advanced Command Language.  Tandem, about 1987.  The shell
  7952. language used in Tandem computers.
  7953.  
  7954. TACPOL - PL/I-like language used by US Army for command and control.
  7955.  
  7956. TAL - Tandem Application Language.  A cross between C and Pascal.  Primary
  7957. system programming language on Tandem computers.  (Tandem has no assembler
  7958. and until recently did not have C or Pascal.)   Derived from SPL[3]?
  7959.  
  7960. TALL - TAC List Language.  "TALL - A List Processor for the Philco 2000",
  7961. J. Feldman, CACM 5(9):484-485 (Sep 1962).
  7962.  
  7963. TAO - Lisp dialect with concurrency, object-orientation and logic. 
  7964. "Concurrent Programming in TAO - Practice and Experience", I. Takeuchi in
  7965. Parallel Lisp: Languages and Systems, T. Ito et al eds, LNCS 441, Springer
  7966. 1989, pp.271-299.
  7967.  
  7968. TARTAN - A simpler proposed language to meet the Ironman requirements. 
  7969. "TARTAN - Language Design for the Ironman Requirement", Mary Shaw et al,
  7970. SIGPLAN Notices 13(9):36 (Sep 1978).
  7971.  
  7972. TASM - Turbo Assembler.  MS-DOS assembler from Borland.
  7973.  
  7974. TASS - Template ASSembly language.  Intermediate language produced by the
  7975. Manchester SISAL compiler.
  7976.  
  7977. TAWK - Tiny AWK.
  7978.  
  7979. Taxis - "A Language Facility for Designing Database-Intensive
  7980. Applications", J. Mylopoulos et al, ACM Trans Database Sys 5(2):185-207
  7981. (June 1980).
  7982.  
  7983. TBIL - Tiny Basic Interpreter Language.  Inner interpreter of Tom Pittman's
  7984. set of Tiny Basics in Dr Dobb's J.
  7985.  
  7986. Tbl - M.E. Lesk.  Language for laying out tables.
  7987.  
  7988. tcl - 
  7989.  
  7990.   1. ("tickle")  Tool Command Language.  John Ousterhout, UCB.
  7991. <ouster@sprite.berkeley.edu>  A string language for issuing commands to
  7992. interactive programs.  Each application can extend tcl with its own set of
  7993. commands.    "Tcl: An Embeddable Command Language", J. Ousterhout, Proc
  7994. 1990 Winter USENIX Conf.
  7995. ftp: ucbvax.berkeley.edu
  7996.  
  7997.   2. Terminal Control Language.  The command language used in the Pick OS. 
  7998. "Exploring the Pick Operating System", J.E. Sisk et al, Hayden 1986.
  7999.  
  8000.   3. Tymshare Conversational Language.  "Interactive Languages: Design
  8001. Criteria and a Proposal", R.K. Moore et al, Proc FJCC 33(1) (1968).
  8002.  
  8003. Tcode - Intermediate language used by the Spineless Tagless G-machine (an
  8004. abstract machine based on graph reduction) designed as a target for
  8005. compilation of non-strict functional languages.  "The Spineless tagless G-
  8006. machine", S. Peyton Jones et al, Fourth Intl Conf Func Prog Langs and Comp
  8007. Arch pp.184-201, ACM Sept 1989.
  8008.  
  8009. TCOL - CMU.  Tree-based intermediate representation produced by the PQCC
  8010. compiler generator.  "An Overview of the Production Quality Compiler-
  8011. Compiler Projects", B.W. Leverett et al, IEEE Computer 13(8): 38-49 (Aug
  8012. 1980).  (See LG).
  8013.  
  8014. TCOL.Ada - CMU, 1980.  An intermediate representation for Ada, was merged
  8015. with AIDA to form Diana.  "TCOL.Ada: Revised Report on an Intermediate
  8016. Representation for the DOD Standard Programming Language", J.M. Newcomer et
  8017. al, CMU-CS-79-128 (June 1979).
  8018.  
  8019. tcsh - Command language for Unix, a dialect of csh.
  8020.  
  8021. Tcsim - Time (Complex) Simulator.  Complex arithmetic version of Tsim. 
  8022. ZOLA Technologies, ZOLA@Applelink.Apple.com.
  8023.  
  8024. TDF - Intermediate language, a close relative of ANDF.  A TDF program is an
  8025. ASCII stream describing an abstract syntax tree.  "TDF Specification",
  8026. Defence Research Agency/Electronics Division, Great Malvern, England, +44
  8027. 684 895314.
  8028. info: Nic Peeling <peeling@hermes.mod.uk>
  8029.  
  8030. TECO - Text Editor and COrrector.  (Originally "Tape Editor and
  8031. COrrector").  Macro language for text editing, screen handling and keyboard
  8032. management.  Has a reputation for being cryptic and hard to learn.  (TECO
  8033. programs are said to resemble line noise.)  The first EMACS editor was
  8034. written in TECO.
  8035. ftp: usc.edu, for VAX/VMS, Unix, MS-DOS, Mac, Amiga
  8036.  
  8037. TELCOMP - Variant of JOSS.  Sammet 1969, p.217.
  8038.  
  8039. Telon - by Panasophic [?]
  8040.  
  8041. TELOS - 
  8042.  
  8043.   1. The EuLisp Object System.  The object-oriented core of EuLisp. 
  8044. Incorporates ideas from CLOS, ObjVLisp and OakLisp.  Total merging of types
  8045. with classes, and message-passing with normal function application.  (See
  8046. EuLisp).
  8047.  
  8048.   2. Pascal-based AI language.  "Design Rationale for TELOS, a Pascal-based
  8049. AI Language", Travis et al, SIGPLAN Notices 12(8) (Aug 1977).
  8050.  
  8051. TELSIM - Busch, ca 1966.  Digital simulation.  Sammet 1969, p.627.
  8052.  
  8053. TempLog - A clausal subset of first-order temporal logic, with discrete
  8054. time.  "Temporal Logic in Programming", M. Abadi et al, INtl Symp Logic
  8055. Prog pp.4-16 (1987).
  8056.  
  8057. TEMPO - Simple syntax and semantics.  Designed for teaching semantic and
  8058. pragmatic aspects of programming languages.  "TEMPO: A Unified Treatment of
  8059. Binding Time and Parameter Passing Concepts in Programming Languages", N.D.
  8060. Jones et al, LNCS 66, Springer 1978.
  8061.  
  8062. Tempura - Language based on temporal logic.  "Executing Temporal Logic
  8063. Programs", B. Moszkowski, Camb U Press 1986.
  8064.  
  8065. Ten15 - A universal intermediate language, predecessor to TDF. 
  8066. Polymorphic?  "Ten15: An Overview", P. Core et al, Royal Signals Radar
  8067. Establishment TR 3977 (Sept 1986).
  8068.  
  8069. TERMAC - Interactive matrix language.  "Users Guide to TERMAC", J.S. Miller
  8070. et al, MIT Dec 1968.
  8071.  
  8072. Terse - Language for decription of hardware logic.  "Hardware Logic
  8073. Simulation by Compilation", C. Hansen, 25th ACM/IEEE Design Automation
  8074. Conf, 1988.
  8075.  
  8076. TeX - Donald Knuth, 1978.  Language for formatting and typesetting text,
  8077. expecially mathematical formulas.  Macro extensible.  Version 3.0, March
  8078. 1990.
  8079.   TeX-78 - The original version of TeX.
  8080.   TeX-82 - The version of TeX described in The TeXbook, Donald Knuth,
  8081. A-W 1984.
  8082. ftp: labrea.stanford.edu:/tex/TeX3.14.tar.Z
  8083. Well-known extensions to TeX:
  8084.   BibTeX - for bibliographies.  Distributed with LaTeX.
  8085.   LaTeX - Lamport TEX.  Incorporates document styles.  "LaTeX, A Document
  8086. Preparation System", Leslie Lamport <lamport@gatekeeper.dec.com>, A-W 1986.
  8087.   MuTeX - for typesetting music.
  8088.  
  8089. From billk@cs.ukans.edu Fri Feb  5 05:44:15 1993
  8090. Received: from mars.cs.ukans.edu by cogsci.Berkeley.EDU (5.63/1.29)
  8091.     id AA26009; Fri, 5 Feb 93 05:44:13 -0800
  8092. From: Bill Kinnersley <billk@cs.ukans.edu>
  8093. Date: Fri, 5 Feb 1993 07:42:18 CST
  8094. X-Mailer: Mail User's Shell (7.2.5 10/14/92)
  8095. To: muir@cogsci.Berkeley.EDU
  8096. Subject: Part 9
  8097. Message-Id:  <9302050742.aa07616@cs.ukans.edu>
  8098.  
  8099. ftp: nic.stolaf.edu:/pub/mutex/MuTeX.tar.Z 
  8100.   PiCTeX - for pictures.
  8101. ftp: june.cs.washington.edu:/tex/PiCTeX.tar.Z
  8102.   SliTeX - for slide preparation.  Distributed with LaTeX.
  8103.  
  8104. TFDL - "TFDL : A Task-level Dataflow Language", P.A. Suhler et al, J
  8105. Parallel and Distrib Comput 9:103-115 (1990).
  8106.  
  8107. TGS-II - Translator Generator System.  Contained TRANDIR.  Sammet 1969,
  8108. p.640.
  8109.  
  8110. THEO - Frame language.  "Theo: A Framework for Self-Improving Systems",
  8111. Mitchell et al, in Architectures for Intelligence, K. VanLehn ed, Erlbaum,
  8112. 1989.
  8113.  
  8114. Theseus - Based on Euclid, never implemented.  "Theseus - A Programming
  8115. Language for Relational Databases", J.E. Shopiro, ACM Trans Database Sys
  8116. 4(4):493-517 (Mar 1979).
  8117.  
  8118. ThingLab - Simulation system written in Smalltalk-80.  Solves constraints
  8119. using value inference.  "The Programming Language Aspects of ThingLab, A
  8120. Constraint-Oriented Simulation Laboratory", A. Borning, ACM TOPLAS
  8121. 3(4):353-387 (Oct 1981).  Version: ThingLab II.
  8122.  
  8123. Tinman - HOLWG, DoD, 1976.  Third of the series of DoD requirements that
  8124. led to Ada.  (See Strawman, Woodenman, Ironman, Steelman).
  8125.  
  8126. TINT - Interpreted version of JOVIAL.  Sammet 1969, p.528.
  8127.  
  8128. Tiny - Concurrency through message-passing to named message queues.
  8129.  
  8130. TIP - TI Pascal.
  8131.  
  8132. TIPL
  8133.  
  8134.   1.  Teach IPL.  Interpretive IPL teaching system.  Sammet 1969, p.393.
  8135.  
  8136.   2.  Dialect of IGL.[?]
  8137.  
  8138. TK!Solver - Software Arts 1983.  Numerical constraint-oriented language. 
  8139. "The TK!Solver Book", M. Konopasek et al, McGraw-Hill 1984.
  8140.  
  8141. TL0 - Thread Language Zero.  The instruction set of the TAM (Threaded
  8142. Abstract Machine), used to implement Id.  "Fine-grain Parallelism with
  8143. Minimal Hardware Support", David Culler et al, SIGPLAN Notices 26(4):164-
  8144. 175 (ASPLOS-IV Proc) (Apr 1991).
  8145.  
  8146. TMDL - Target-Machine Description Language.  Machine-desription language
  8147. used in the Graham-Glanville code generator.  "Table-Driven Code
  8148. Generation", S.L. Graham, IEEE Computer 13(8):25-34 (Aug 1980).
  8149.  
  8150. TMG - Transmogrifier.  Language for an early compiler-compiler.  Macro'd
  8151. from the IBM 1604 to the 709 to the 7094 to the GE635, where it was used to
  8152. write the EPL compiler for Multics development.  "TMG - A Syntax-Directed
  8153. Compiler", R.M. McClure, Proc ACM 20th Natl Conf (1965).  Sammet 1969,
  8154. p.636.
  8155.  
  8156. TOK - Referred to in Ursula K. LeGuin's "Always Coming Home."  Seems to be
  8157. similar to the original BASIC.
  8158.  
  8159. Toronto Euclid - The standard dialect of Euclid, as compared to Ottawa
  8160. Euclid.
  8161.  
  8162. TPL - 
  8163.   1. Table Producing Language.  "The Bureau of Labor Statistics Table
  8164. Producing Language (TPL)", R.C. Mendelssohn, Proc ACM Annual Conf (1974).
  8165.  
  8166.   2. Fleming Nielson.  Concurrent, functional. [?]
  8167.  
  8168.   3. Terminal Programming Language.  Texas Inst, late 70's.  Used on the
  8169. TI-990/1 Small Business Computer and the TI-771 Intelligent Terminal.
  8170.  
  8171. TPS - Tree Pruning System.  "An Adaptive Tree Pruning System: A Language
  8172. for Programming Heuristic Tree Searches", E.W. Kozdrowicki, Proc ACM 23rd
  8173. Natl Conf 1968.
  8174.  
  8175. TPU - Text Processing Utility.  DEC.  Language for creation of text-
  8176. processing interfaces, used to implement DEC's Extensible VAX Editor (EVE).
  8177.  
  8178. TRAC - Text Reckoning And Compiling.  Calvin N. Mooers and Peter Deutsch
  8179. <Deutsch@SMLI.Eng.Sun.Com>.  An interactive macrogenerator language for
  8180. string manipulation.  Derived ideas from Macro SAP.  "TRAC: A Procedure-
  8181. Describing Language for the Reactive Typewriter", Calvin N. Mooers, CACM
  8182. 9(3):215-219 (Mar 1966).  Rockford Research Inst, 1972.  Sammet 1969,
  8183. pp.448-454.  Macro Processors, A.J. Cole, Cambridge U Press.  Versions for
  8184. PDP-1, PDP-8, PDP-10, PDP-11 (See MINT, SAM76)
  8185. info: Preston Briggs <preston@rice.edu>
  8186.  
  8187. Trafola-H - A specification language for program transformations. 
  8188. Functional, statically typed, polymorphic, with extended constructs for
  8189. pattern-matching.  "Trafola-H Reference Manual", R. Heckmann et al, U
  8190. Saarlandes, Saarbrucken 1991.
  8191.  
  8192. TRANDIR - TRANslation DIRector.  A language for syntax-directed compiling. 
  8193. Sammet 1969, p.640.
  8194.  
  8195. TRANQUIL - 1966.  ALGOL-like language with sets and other extensions, for
  8196. the Illiac IV.  "TRANQUIL: A Language for an Array Processing Computer",
  8197. N.E. Abel et al, Proc SJCC 34 (1969). 
  8198.  
  8199. TRANS - TRAffic Network Simulation Language.  "A Model for Traffic
  8200. Simulation and a Simulation Language for the General Transportation
  8201. Problem", Proc FJCC 37 (1970).
  8202.  
  8203. TRANS-USE - Early system on IBM 1103 or 1103A.  Listed in CACM 2(5):16 (May
  8204. 1959).
  8205.  
  8206. TRANSCODE - Early system on Ferut computer.  Listed in CACM 2(5):16 (May
  8207. 1959).
  8208.  
  8209. TRANSIT - Subsystem of ICES.  Sammet 1969, p.616.
  8210.  
  8211. TREET - E.C. Haines, 1964.  An experimental variant of LISP1.5, implemented
  8212. on the STRETCH computer.  Basic structure was a trinary tree.  "The TREET
  8213. Time-Sharing System", H.A. Bayard et al, Proc 2nd Symp Symb and Alg Manip,
  8214. ACM (Mar 1971).  Sammet 1969, pp.457-461.
  8215.  
  8216. TREETRAN - FORTRAN IV subroutine package for tree manipulation.
  8217.  
  8218. Trellis - (formerly named Owl).  DEC.  Object-oriented, with static type-
  8219. checking and encapsulation.  "Persistent and Shared Objects in
  8220. trellis/owl", P. O'Brien et al, Proc 1986 IEEE Workshop on Object-Oriented
  8221. Database Systems, IEEE, NY 1986.
  8222. info: Jerry Smith <smith@pipe.enet.dec.com>
  8223.  
  8224. TRIGMAN - Symbolic math, especially Celestial Mechanics.
  8225.  
  8226. Trilogy - Paul Voda, UBC, 1988.  Logic programming language with numerical
  8227. constraint-solving over the natural numbers.  Syntactically a blend of
  8228. Prolog, LISP and Pascal.  Contains three types of clauses: predicates
  8229. (backtracking but no assignable variables), procedures (if-then-else but no
  8230. backtracking; assignable variables), and subroutines (like procedures, but
  8231. with input and system calls; callable only from top level or from other
  8232. subroutines).  "The Constraint Language Trilogy: Semantics and
  8233. Computations", P. Voda <voda@vanbc.wimsey.bc.ca>, Complete Logic Systems,
  8234. 741 Blueridge Ave, North Vancouver BC, V7R 2J5.  Papers by Voda, and BYTE
  8235. review.[?]
  8236.  
  8237. Troff - Text formatting language/interpreter, a variant of Unix roff.  (See
  8238. groff, nroff).
  8239.  
  8240. TROLL - Array language for continuous simulation, econometric modeling,
  8241. statistical analysis.  "TROLL Reference Manual", D0062, Info Proc Services,
  8242. MIT (1973-76).
  8243.  
  8244. True BASIC - John Kemeny & Thomas E. Kurtz.  A compiled BASIC requiring no
  8245. line numbers.
  8246.  
  8247. Tsim - Time Simulator.  Stack-based simulation language.  ZOLA
  8248. Technologies, ZOLA@Applelink.Apple.com.
  8249.  
  8250. TSL-1 - Task Sequencing Language.  Language for specifying sequences of
  8251. tasking events in Ada programs.  "Task Sequencing Language for Specifying
  8252. Distributed Ada Systems", D.C. Luckham et al in PARLE: Parallel
  8253. Architectures and Langs Europe, LNCS 259, Springer 1987, pp.444-463.
  8254.  
  8255. Tui - Functional.  "Tui Language Manual", B. Boutel, TR CSD-8-021, Victoria
  8256. U of Wellington, 1988.
  8257.  
  8258. Tuki - An intermediate code for functional languages.  "Another
  8259. Implementation Technique for Applicative Languages", H. Glaser et al,
  8260. ESOP86, LNCS 213, Springer 1986.
  8261.  
  8262. Tuple Space Smalltalk - "Using Tuple Space Communication in Distributed
  8263. Object-Oriented Languages", S. Matsuoka et al, SIGPLAN Notices 23(11):276-
  8264. 284 (Nov 1988).
  8265.  
  8266. Turbo Pascal - Borland Intl's Pascal.  Perhaps the first integrated
  8267. development environment for MS-DOS.
  8268. Versions 1.0-3.0: standard Pascal with a few extensions
  8269. Versions 4.0 (1987) and 5.0: separate compilation
  8270. Version 5.5: object-oriented facilities
  8271. Version 6.0: Turbo Vision OOP library
  8272.  
  8273. Turbo Prolog - 1986.  A Prolog-like language with strong typing and user-
  8274. defined domains.  Programs are arranged in sections: DOMAINS, CLAUSES,
  8275. PREDICATES, DATABASE and GOAL.  Currently known as PDC Prolog, and
  8276. distributed by Prolog Development Center, Atlanta (404)873-1366
  8277. <pdc@mcimail.com>?
  8278.  
  8279. Turing - R.C. Holt & J.R. Cordy <cordy@qucis.queensu.ca>, U Toronto, 1982. 
  8280. Descendant of Concurrent Euclid, an airtight super-Pascal.  "Turing
  8281. Language Report", R.C. Holt & J.R. Cordy, Report CSRI-153, CSRI, U Toronto,
  8282. Dec 1983.  "The Turing Programming Language", R.C. Holt & J.R. Cordy, CACM
  8283. 31(12) (Dec 1988).  Available from Holt Software Assocs, Toronto.  Versions
  8284. for Sun, VAX/VMS, MS-DOS, Mac, VM/CMS.
  8285. info: <distrib@turing.toronto.edu>
  8286.  
  8287. Turing Plus - Systems programming language, a concurrent descendant of
  8288. Turing.  "The Turing Plus Report", R.C. Holt & J.R. Cordy, CSRI, U Toronto,
  8289. Feb 1987.  Available from Holt Software Assocs, Toronto
  8290. <distrib@hsa.on.ca>.
  8291.  
  8292. Turtle - The subset of LOGO dealing directly with turtle graphics.
  8293.  
  8294. TUTOR - Scripting language on PLATO systems from CDC.  "The TUTOR
  8295. Language", Bruce Sherwood, Control Data, 1977.
  8296.  
  8297. Twentel - Functional.  "The TWENTEL System (Version 1).", H. Kroeze, CS
  8298. Dept TR, U Twente, 1986.
  8299.  
  8300. TWIG - Tree-Walking Instruction Generator.  A code-generator language. 
  8301. "Twig Language Manual", S.W.K. Tijang, CS TR 120, Bell Labs, 1986.  A
  8302. variant, ML-Twig in SML by Jussi Rintanen <jur@cs.hut.fi> comes with
  8303. SML/NJ.
  8304.  
  8305. TXL - Tree Transformation Language.  J.R. Cordy et al, Queens U, Canada,
  8306. 1988.  A general language for implementing source-to-source translation and
  8307. program transformation tasks.  "TXL: A Rapid Prototyping System for
  8308. Programming Language Dialects", J.R. Cordy et al, Comp Langs 16(1) (Jan
  8309. 1991).  Specification and Automatic Prototype Implementation of Polymorphic
  8310. Objects in Turing Using the TXL Dialect Processor", J.R. Cordy & E.M.
  8311. Promislow, Proc IEEE Intl Conf on Comp Lang ICCL'90 (Mar 1990).
  8312. ftp: qusuna.qucis.queensu.ca, Vers 5.3, source in ANSI C
  8313.  
  8314. Typed Smalltalk - Ralph Johnson, U Illinois <johnson@speedy.cs.uiuc.edu>.
  8315.  
  8316. TYPOL - A specialized logic programming language.  "TYPOL: A Formalism to
  8317. Implement Natural Semantics", T. Despeyroux, RR 94, INRIA, 1988.
  8318.  
  8319. UAN - User Action Notation.  VPI.  A notation for representation of
  8320. graphical user interfaces, e.g. mice and icons, H. Hartson et al, ACM Trans
  8321. on Info Sys, July 1990.
  8322.  
  8323. UBASIC - Y. Kida <kida@rkmath.rikkyo.ac.jp>.  Extension of BASIC oriented
  8324. for symbolic math and number theory.  Includes bignums, fractions, complex
  8325. numbers and polynomials, integer factorization.  Version for MS-DOS,
  8326. written in assembly language.  Reviewed by W.D. Neumann, Notices of AMS
  8327. (Mar 1991).
  8328. ftp: wsmr-simtel20.army.mil
  8329.      shape.mps.ohio-state.edu:pub/msdos/ubasic
  8330.  
  8331. uC++ - Micro-C++.  U Waterloo.  A concurrent extension of C++ with
  8332. coroutines and mutual exclusion.  Soft Prac & Exp (Feb 1992).  Version
  8333. 3.4.4 for Unix using GCC.
  8334. ftp: watmsg.uwaterloo.edu:pub/uSystem/u++-3.4.4.tar.Z
  8335.  
  8336. UCSD Pascal - see Pascal-P.
  8337.  
  8338. U-Code - Universal Pascal Code.  Intermediate language, a generalization of
  8339. P-code for easier optimization.  Developed originally for the Los Alamos
  8340. Cray-1 and the Lawrence Livermore S-1.  A refined version currently used by
  8341. MIPS compilers is descended from one at Stanford U.  "Machine Independent
  8342. Pascal Code Optimization", D.R. Perkins et al, SIGPLAN Notices 14(8): 201-
  8343. 201 (1979).  "A Transporter's Guide to the Stanford U-Code Compiler
  8344. System", P. Nye et al, TR CSL Stanford U, June 1983.  (See HPcode).
  8345.  
  8346. UHELP - Linear programming.  "UHELP User's Manual", D. Singh, Indus Eng
  8347. Dept, U Houston (Oct 1969).
  8348.  
  8349. UGLIAC - Early system on Datatron 200 series.  Listed in CACM 2(5):16 (May
  8350. 1959).
  8351.  
  8352. UHELP - Mathematical language, listed [?] 1976.
  8353.  
  8354. ULP - Small structured language for use in microprocessors.  "User's Guide
  8355. to the ULP Language for the PDP-11", CS TR 536, U Maryland (May 1977).
  8356.  
  8357. uML - Micro ML.  An interpreter for a subset of SML that runs on MS-DOS.
  8358. ftp: ftp.cs.umu.se:/pub/umlexe01.zoo
  8359.  
  8360. UNCOL -  UNiversal Computer Oriented Language.  A universal intermediate
  8361. language, discussed but never implemented.  "A First Version of UNCOL",
  8362. T.B. Steel, Proc JCC 19:371-378 (Winter 1961).  Sammet 1969, p.708.
  8363.  
  8364. UNICODE - Pre-FORTRAN on the IBM 1103, similar to MATH-MATIC.  Sammet 1969,
  8365. p.137.
  8366.  
  8367. UNIQUE - A portable job control language, used.  "The UNIQUE Command
  8368. Language - Portable Job Control", I.A. Newman, Proc DATAFAIR 73, 1973,
  8369. pp.353-357.
  8370.  
  8371. UNISAP - Early system on UNIVAC I or II.  Listed in CACM 2(5):16 (May
  8372. 1959).
  8373.  
  8374. UNITY - A high-level parallel language.  "Parallel Program Design", K.M.
  8375. Chandry et al, A-W 1988.
  8376.  
  8377. USE - Early system on IBM 1103 or 1103A.  Listed in CACM 2(5):16 (May
  8378. 1959).
  8379.  
  8380. USL - Query language, close to natural English.
  8381.  
  8382. USSA - B. Burshteyn, Pyramid, 1992.  Object-oriented state language.
  8383. doc: primost.cs.wisc.edu:/pub/ussa.ps.Z
  8384.  
  8385. utility-coder - Data manipulation and report generation.  "User's Manual
  8386. for utility-coder", Cambridge Computer Assoc (Jul 1977).
  8387.  
  8388. V - Wide-spectrum language used in the knowledge-based environment CHI. 
  8389. "Research on Knowledge-Based Software Environments at Kestrel Inst", D.R.
  8390. Smith et al, IEEE Trans Soft Eng SE-11(11):1278-1295 (1985).
  8391.  
  8392. VAL -
  8393.  
  8394.   1. Value-oriented Algorithmic Language.  J.B. Dennis, MIT 1979.  Single
  8395. assignment language, designed for MIT dataflow machine.  Based on CLU, has
  8396. iteration and error handling, lacking in recursion and I/O.  "A Value-
  8397. Oriented Algorithmic Language", W.B. Ackermann et al, MIT LCS TR-218, June
  8398. 1979.  "The VAL Language: Description and Analysis", J.R. McGraw, TOPLAS
  8399. 4(1):44-82 (Jan 1982).
  8400.  
  8401.   2. Variable Assembly Language.  Unimation.  Language for industrial
  8402. robots.  Version: VAL II - "VAL II: A New Robot Control System for
  8403. Automatic Manufacturing", B.E. Shimano et al, Proc IEEE Intl Conf on
  8404. Robotics 1984, pp.278-292.
  8405.  
  8406.   3. VHDL Annotation Language.  Stanford.
  8407. ftp: wilbur.stanford.edu:pub/valbin-sun3-4.0-0.1.3.tar.Z
  8408. source in Ada available from Larry M. Augustin <lma@sierra.stanford.edu>
  8409.  
  8410. Valid - Dataflow language.  "A List-Processing-Oriented Data Flow Machine
  8411. architecture", Makoto Amamiya et al, AFIPS NCC, June 1982, pp.143-151.
  8412.  
  8413. VDM - Specification method based on predicate logic, an outgrowth of VDL. 
  8414. "The Vienna Development Method: The Meta-Language", D. Bjorner et al eds,
  8415. LNCS 61, Springer 1978.  Version: BSI/VDM.  Jones's books, 1980, 1986.[?]
  8416.  
  8417. Vector C - CMU?  Variant of C similar to ACTUS.
  8418.  
  8419. VECTRAN - FORTRAN with array extensions.  "The VECTRAN Language: An
  8420. Experimental Language for Vector/Matrix Array Processing, Report G320-
  8421. 3334, IBM (Aug 1975).
  8422.  
  8423. Verdi - (named for the Italian composer Giuseppe Verdi (1813-1901)) 
  8424. Provable systems language.  Descendant of Ottawa Euclid.
  8425.  
  8426. VEL - See LISP70.
  8427.  
  8428. Verilog - Cadence Design Systems.  A hardware description language.  "The
  8429. Verilog Hardware Description Language", Donald E. Thomas & Philip Moorby,
  8430. Kluwer 1991.
  8431. info: kmd@cadence.com
  8432.  
  8433. VGQF - Query language.
  8434.  
  8435. VHDL - VHSIC Hardware Description Language.  (VHSIC = Very High Speed
  8436. Integrated Circuit)  The DoD standard for hardware description.  "VHSIC
  8437. Hardware Description Language", M.R. Shahdad et al, IEEE Computer 18(2):94-
  8438. 103 (Feb 1985).
  8439.  
  8440. Vienna Definition Language - IBM Vienna Labs.  A language for formal
  8441. definition via operational semantics.  Used to specify the semantics of
  8442. PL/I.  "The Vienna Definition Language", P. Wegner, ACM Comp Surveys
  8443. 4(1):5-63 (Mar 1972).
  8444.  
  8445. Vienna Fortran - Hans Zima, U Vienna.  Data-parallel.
  8446.  
  8447. Views - A Smalltalk extension for computer algebra.  "An Object Oriented
  8448. Approach to Algebra System Design", K. Abdali et al, in Symp Symb Alg
  8449. Manip, ACM 1986, pp.24-30.
  8450.  
  8451. Viron - "Five Paradigm Shifts in Programming Language Design and Their
  8452. Realization in Viron, a Dataflow Programming Environment", V. Pratt, 10th
  8453. POPL, ACM 1983, pp.1-9.
  8454.  
  8455. VITAL - Semantics language using FSL.  Mondshein, 1967.  Sammet 1969,
  8456. p.641.
  8457.  
  8458. VIVID - Numerical constraint-oriented language.  "VIVID: The Kernel of a
  8459. Knowledge Representation Environment Based on the Constraints Paradigm of
  8460. Computation", J. Maleki, Proc 20th Annual Hawaii Intl Conf on System
  8461. Sciences (Jan 1987) pp.591-597.
  8462.  
  8463. viz - Visual language for specification and programming.  "viz: A Visual
  8464. Language Based on Functions", C.M. Holt, 1990 IEEE Workshop on Visual
  8465. Langs, Oct 1990, pp.221-226.
  8466.  
  8467. Vlisp - Patrick Greussay <pg@litp.ibp.fr> ca 1973.  Lisp dialect widely
  8468. used in France.  (See ObjVlisp).
  8469.  
  8470. VPL - Dataflow language for interactive image processing.  "VPL: An Active,
  8471. Declarative Visual Programming System, D. Lau-Kee et al, 1991 IEEE Workshop
  8472. on Vis Langs, Oct 1991, pp.40-46.
  8473.  
  8474. VULCAN -
  8475.  
  8476.   1. Wayne Ratliff ca. 1980.  CP/M port of JPLDIS which evolved into dBASE
  8477. II.
  8478.  
  8479.   2. The dBASE-like interpreter and compiler sold by RSPI with their
  8480. Emerald Bay product. [same as 1?]
  8481.  
  8482.   3. Early string manipulation language.  "VULCAN - A String Handling
  8483. Language with Dynamic Storage Control", E.P. Storm et al, Proc FJCC 37,
  8484. AFIPS (Fall 1970).
  8485.  
  8486.   4. Kahn et al, Xerox PARC.  Concurrent object orientation and logic
  8487. programming.  An object-oriented preprocessor for FCP.  "Vulcan: Logical
  8488. Concurrent Objects", K. Kahn et al in Research Directions in Object-
  8489. Oriented Programming, A.B. Shriver et al eds, MIT Press 1987.
  8490.  
  8491. WAFL - WArwick Functional Language.  Warwick U, England.  LISP-like.
  8492.  
  8493. WAM - Intermediate language for compiled Prolog, used by the Warren
  8494. Abstract Machine.  "An Abstract Prolog Instruction Set", D.H.D. Warren, TR
  8495. 309, SRI 1983.
  8496.  
  8497. WATBOL - WATerloo COBOL, for MVS.
  8498.  
  8499. WATFIV - WATerloo Fortran IV.  U Waterloo, Canada.  Student-friendly
  8500. variant of FORTRAN IV.
  8501.  
  8502. WATFOR - WATerloo FORtran.  U Waterloo, Canada.  Student-friendly variant
  8503. of FORTRAN.  "WATFOR - The University of Waterloo FORTRAN IV Compiler",
  8504. P.W. Shantz et al, CACM 10(1):41-44 (Jan 1967).
  8505.  
  8506. WAVE - Robotics language.  "WAVE: A Model-Based Language for Manipulator
  8507. Control", R.P. Paul, Ind Robot 4(1):10-17 (1979).
  8508.  
  8509. WEB - Knuth's self-documenting brand of programming, with algorithms and
  8510. documentation intermixed in one file.  They can be separated using Weave
  8511. and Tangle.  Versions exist for Pascal, C etc.  Spiderweb can be used to
  8512. create versions for other languages (ftp princeton.edu).  "Literate
  8513. Programming", D.E. Knuth, Computer J 27(2):97-111 (May 1984).  
  8514.  
  8515. WFL - Work Flow Language.  Burroughs, ca 1973.  A job control language for
  8516. the B6700/B7700 under MCP.  WFL was a compiled block-structured language
  8517. similar to ALGOL-60, with subroutines and nested begin-end's.  "Work Flow
  8518. Management User's Guide", Burroughs Manual 5000714 (1973).  "Burroughs
  8519. B6700/B7700 Work Flow Language", R.M. Cowan in Command Languages, C. Unger
  8520. ed, N-H 1975.
  8521.  
  8522. Wisp - "An Experiment with a Self-Compiling Compiler for a Simple List-
  8523. Processing Language", M.V. Wilkes, Ann Rev Automatic Programming 4:1-48
  8524. (1964).
  8525.  
  8526. Woodenman - HOLWG, DoD, 1975.  Second of the series of DoD requirements
  8527. that led to Ada.  (See Strawman, Tinman, Ironman, Steelman).
  8528.  
  8529. WOOL - Colas Nahaboo <colas@sophia.inria.fr>  Small Common Lisp-like
  8530. extension language.  Claims to be the fastest interpreted language in C
  8531. with run-time types.  Version 1 used by the GWM window manager.  Version 2
  8532. has an object system.
  8533.  
  8534. WPOP - WonderPop.  Robert Rae <rhr@aiai.ed.ac.uk>, Edinburgh 1976.  An
  8535. implementation of POP for the PDP-10 that used cages for different data
  8536. types.  Introduced processes, properites, and some typed identifiers 
  8537.  
  8538. WRITEACOURSE - CAI language, for IBM 360.  "WRITEACOURSE: An Educational
  8539. Programming Language", E. Hunt et al, Proc FJCC 33(2) (1968).
  8540.  
  8541. WSFN - Which Stands For Nothing.  Atari 1983.  Beginner's language with
  8542. emphasis on graphics, for Atari home computers.  Version: Advanced WSFN.
  8543.  
  8544. WSL - Waterloo Systems Language.  A C-like systems programming language. 
  8545. "Waterloo Systems Language:  Tutorial and Language Reference", F.D.
  8546. Boswell, WATFAC Publications Ltd, Waterloo, Canada.  ISBN 0-919884-00-8.
  8547.  
  8548. X-1 - Early system on UNIVAC I or II.  Listed in CACM 2(5):16 (May 1959).
  8549.  
  8550. Xbase - Generic term for the dBASE family of languages.  Coined in response
  8551. to threatened litigation over use of the copyrighted trademark "dBASE."
  8552.  
  8553. XC - Declarative extension of C++.  "XC - A Language for Embedded Rule
  8554. Based Systems", E. Nuutila et al, SIGPLAN Notices 22(9):23-32 (Sep 1987).
  8555.  
  8556. XDL - An object-oriented extension to CCITT's SDL[2].  "XDL: An Object-
  8557. Oriented Extension to SDL", S.J. Ochuodho et al in [?]
  8558.  
  8559. Xfun - S. Dalmas <dalmas@sophia.inria.fr>, INRIA, 1991.  A cross between
  8560. SML and Russell, intended for computer algebra.  "A Polymorphic Functional
  8561. language Applied to Symbolic Computation", S. Dalmas, Proc Intl Symp Symb
  8562. Alg Comp, Berkeley 1992.
  8563.  
  8564. Xi - VLSI design language.  "The Circuit Design Language Xi", S.I. Feldman,
  8565. unpublished memo, Bell Labs, 1982.  Mentioned in Computational Aspects of
  8566. VLSI, J.D. Ullman, CS Press 1984.
  8567.  
  8568. XLISP - eXperimental LISP.  David Betz.  LISP variant with object-oriented
  8569. extensions, source in C.  Versions exist for most PC's.  BYTE article.
  8570. ftp: glia.biostr.washington.edu:pub/xlisp/xlisp21e.tar.Z
  8571.  
  8572. XPC - eXplicitly Parallel C.  Dialect of Parallel C which is mode
  8573. independent, i.e. efficiently compilable to both SIMD and MIMD
  8574. architectures.  "Toward Semantic Self-Consistency in Explicitly Parallel
  8575. Languages," M.J. Phillip & H.G. Dietz, Proc 4th Intl Conf on
  8576. Supercomputing, Santa Clara, CA, May 1989, v.1, pp.398-407.  Research
  8577. implementations only.
  8578.  
  8579. XPL - Stanford, 1967-69.  Dialect of PL/I used for compiler writing.  "A
  8580. Compiler Generator," W.M. McKeeman et al, P-H 1970.  Also JCC, AFIPS 1968.
  8581.  
  8582. XPOP - Extensible macro assembly language with user-redefinable grammar,
  8583. for use with FAP.  "XPOP: A Meta-language Without Metaphysics", M.I.
  8584. Halpern, Proc FJCC 25:57-68, AFIPS (Fall 1964).
  8585.  
  8586. XScheme - David Betz.  Scheme with object-oriented extensions.  Source in
  8587. C.  Versions for PC, Macintosh, Atari, Amiga.
  8588. ftp: labrea.stanford.edu
  8589.      comp.sources.amiga/volume90, version 0.28 for Amiga
  8590.  
  8591. XTRAN - FORTRAN-like, interactive.
  8592.  
  8593. Y - General purpose systems language, syntactically falls between RATFOR
  8594. and C.  "The Y Programming Language", D.R. Hanson, SIGPLAN Notices
  8595. 16(2):59-68 (Feb 1981).
  8596.  
  8597. y++ - "YACC Meets C++", S.C. Johnson, USENIX Spring '88 Conf.
  8598.  
  8599. Yaa - Yet Another Assembler - Macro assembler for GCOS 8 and Mark III on
  8600. Bull DPS-8 machines.  Available from Bull as part of U Waterloo Tools
  8601. package (maintained by <pjf@thinkage.on.ca>).
  8602.  
  8603. Yacc - Yet Another Compiler Compiler.  Language used by the Yacc LALR
  8604. parser generator.  "YACC - Yet Another Compiler Compiler", S.C. Johnson, CS
  8605. TR 32, Bell Labs (Jul 1975). 
  8606. Implementations:
  8607.  ayacc - UC Irvine.  written in Ada, produces Ada output
  8608.   ftp: liege.ics.uci.edu:pub/irus/aflex-ayacc_1.2a.tar.Z
  8609.  Bison - from GNU
  8610.   ftp: prep.ai.mit.edu:pub/gnu/bison-1.14.tar.Z
  8611.  Bison++ - produces C++ output.
  8612.   ftp: psuvax1.cs.psu.edu:pub/src/gnu/bison++-1.04.tar.Z
  8613.  perl-byacc - produces perl output
  8614.   ftp:sparky.sterling.com:local-src/perl-byacc1.8.tar.Z
  8615.  SASL-Yacc - "Yacc in SASL - An Exercise in Functional Programming", Simon
  8616. Peyton-Jones, Software Prac & Exp 15:807-820 (1985).  Mentions also a BCPL
  8617. implementation.
  8618.  Yacc++ - 1990.  An object-oriented rewrite of yacc, supports regular exp-
  8619. ressions, produces an LR(1) parser.  Chris Clark, Compiler Resources Inc,
  8620. <compres!bz@crackers.clearpoint.com> (508) 435-5016.
  8621.  MLYACC - Implementation and output in SML/NJ
  8622.   ftp: research.att.com:dist/ml/75.tools.tar.Z
  8623.  
  8624. YAPS - Yet Another Production System?  College Park Software.  A commercial
  8625. production rule language, simpler than OPS5.  Allows knowledge bases to be
  8626. attached to instances of CLOS objects.
  8627. info: Liz Allen <liz@grian.cps.altadena.cs.us>
  8628.  
  8629. Yay - Yet Another Yacc - An extension of Yacc with LALR(2) parsing. 
  8630. Available from Bull as part of U Waterloo Tools package (maintained by
  8631. <pjf@thinkage.on.ca>).
  8632.  
  8633. YELLOW - A language proposed by SRI to meet the Ironman requirements which
  8634. led to Ada. "On the YELLOW Language Submitted to the DoD", E.W. Dijkstra,
  8635. SIGPLAN Notices 13(10):22-26 (Oct 1978).
  8636.  
  8637. Yerk - (named for Yerkes Observatory)  A public domain reincarnation of
  8638. Neon.
  8639. ftp: oddjob.uchicago.edu:pub/Yerk
  8640. info: Bob Lowenstein <rfl@oddjob.uchicago.edu>
  8641.  
  8642. Z -
  8643.  
  8644.   1. Programming Research Group, Oxford U, ca 1980.  A specification
  8645. language based on axiomatic set theory and first order logic.  Must be
  8646. written in LaTeX?  Used in the IBM CICS project?  "Understanding Z", J.M.
  8647. Spivey, Cambridge U Press 1988.
  8648.  
  8649.   2. A stack-based, complex arithmetic simulation language.  ZOLA
  8650. Technologies, ZOLA@Applelink.Apple.com.
  8651.  
  8652. Z++ - Object-oriented extension of Z.  "Z++, an Object-Oriented Extension
  8653. to Z", Lano, Z User Workshop, Oxford 1990, Springer Workshops in Computing,
  8654. 1991, pp.151-172.
  8655.  
  8656. ZAP - Language for expressing transformational developments.  "A System for
  8657. Assisting Program Transformation", M.S. Feather, ACM TOPLAS 4(1):1-20 (Jan
  8658. 1982).
  8659.  
  8660. Zed - 1978.  Software Portability Group, U Waterloo.  Eh, with types added. 
  8661. Similar to C.  Implementation language for the Thoth realtime operating
  8662. system.  Added a few simple types for greater efficiency on byte-addressed
  8663. machines.  String constants in case statements.  Enforces the naming
  8664. convention: MANIFESTS, Externals and locals.  "Porting the Zed Compiler",
  8665. G.B. Bonkowski et al, SIGPLAN Notices 14(8):92-97 (Aug 1979).
  8666.  
  8667. ZENO - Euclid with asynchronous message-passing.  "Preliminary ZENO
  8668. Language Description", J.E. Ball et al, SIGPLAN Notices 14(9):17-34 (Sep
  8669. 1979).
  8670.  
  8671. ZERO - Object oriented extension of Z.  "Object Orientation in Z", S.
  8672. Stepney et al eds, Springer 1992.
  8673.  
  8674. ZEST - Object oriented extension of Z.  "Object Orientation in Z", S.
  8675. Stepney et al eds, Springer 1992.
  8676.  
  8677. ZetaLisp - MACLISP dialect used on the LISP Machine.  The many extensions
  8678. to MACLISP include vectors, closures, flavors, stack groups, locatives and
  8679. invisible pointers.  "LISP Machine Manual", D. Weinreb and D. Moon, MIT AI
  8680. Lab, 1981.
  8681.  
  8682. ZIL - Zork Implementation Language.  Language used by Infocom's Interactive
  8683. Fiction adventure games.  zmachine is an interpreter, for Unix and Amiga.
  8684. ftp: plains.nodak.edu:Minix/st.contrib.Infocom.tar.Z
  8685.  
  8686. zsh - Sh with list processing and database enhancements.
  8687. ftp: cs.ucsd.edu:/pub/zsh/zsh2.1.0.tar.Z
  8688.  
  8689. ZOPL - Geac.  A low-level Pascal.
  8690.  
  8691. ZUG - Geac.  A low-level Awk?
  8692.  
  8693. Zuse - (named for Konrad Zuse, the designer of the first modern programming
  8694. language Plankalkul.)  Christian Collberg <collberg@dna.lth.se>, PhD thesis
  8695. 1991.  A descendant of Ada, Modula-2, Mesa and Oberon-1 supporting several
  8696. levels of information hiding.  The Zuse type system includes fully hidden
  8697. types (similar to Modula-2 opaque types but wihout any implementation
  8698. restriction), semi-open pointer types (same as Modula-2 opaque types),
  8699. extensible record types (similar to Oberon-1 public projection types but
  8700. without the compiler hint), enumeration types, extensible enumeration
  8701. types, and extensible subrange types.  A type can also be protected by
  8702. specifying the operations that particular modules may perform (similar to
  8703. C++ friend classes and Ada private types).  Zuse also includes hidden and
  8704. extensible constants and hidden inline procedures.  In order to support the
  8705. higher levels of information hiding the implementation employs partial
  8706. intermediate code linking.  Version for Sun-3.
  8707.  
  8708.  
  8709.  
  8710. APPENDIX A
  8711.  
  8712.  
  8713. Selected Works on Computer Language History and Design
  8714. ======================================================
  8715.  
  8716. AFIPS (American Federation of Information Processing Societies), SJCC
  8717. (Spring Joint Computer Conference) and FJCC (Fall Joint Computer
  8718. Conference), replaced after 1972 by the NCC (National Computer Conference). 
  8719. TK7885 .A1 J6
  8720.  
  8721. Andrews, G.R. and F.B. Schneider, "Concepts and Notations for Concurrent
  8722. Programming", ACM Comp Surveys 15(1):1-43 (Mar 1983).
  8723.  
  8724. Bal, H.E., "Programming Languages for Distributed Systems", ACM Comp
  8725. Surveys 21(3):261-322 (Sep 1989).
  8726.  
  8727. Blume, Christian, "Programming Languages for Industrial Robots", Springer
  8728. 1986.
  8729.  
  8730. Bobrow, D.G. & Raphael, "New Programming Languages for Artificial
  8731. Intelligence Research", ACM Comp Surveys 6:155 (Nov 1974).
  8732.  
  8733. Computer Languages  QA 76.7 .C647  ISSN 0096-0551
  8734.  
  8735. Conference Record of the 19XX ACM Symposium on Lisp and Functional
  8736. Programming, QA 76.73 .L23 A26
  8737.  
  8738. Horowitz, Ellis, "Programming Languages, A Grand Tour", 3rd ed, Springer
  8739. 1987.  QA76.7 .P78
  8740.  
  8741. Hudak, Paul, "Conception, Evolution and Application of Functional
  8742. Programming Languages", ACM Comp Surveys 21(3):359-411 (Sep 1989).
  8743.  
  8744. IEEE Transactions on Software Engineering, QA76 .I33x
  8745.  
  8746. POPL - Conference Record of the [Nth] Annual ACM Symposium on Principles of
  8747. Programming Languages.  QA 76.7 .A25a
  8748.  
  8749. Sammet, Jean E., <sammet@vtvm1.cc.vt.edu> "Programming Languages:  History
  8750. and Fundamentals",  P-H 1969.  QA76.5 .S213.  The definitive work on early
  8751. computer language development.
  8752.  
  8753. Sammet, Jean E., "Programming Languages: History and Future", CACM
  8754. 15(7):601-610 (Jul 1972).
  8755.  
  8756. Sammet, Jean E., "Roster of Programming Languages"
  8757.     Computers & Automation 16(6):80-82 (June 1967)
  8758.     Computers & Automation 17(6):120-123 (June 1968)
  8759.     Computers & Automation 18(7):153-158 (June 1969)
  8760.     Computers & Automation 19(6B):6-11 (Nov 30, 1970)
  8761.     Computers & Automation 20(6B):6-13 (June 30, 1971)
  8762.     Computers & Automation 21(6B) (Aug 30, 1972)
  8763.     Computing Reviews 15(4): 147-160 (April 1974)
  8764.     CACM 19(12):655-669 (Dec 1976)
  8765.     SIGPLAN Notices 13(11):56 (Nov 1978).
  8766.  
  8767. Shapiro, E., "The Family of Concurrent Logic Programming Languages", ACM
  8768. Comp Surveys, 21(3):413-510 (Sep 1989).
  8769.  
  8770. ACM SIGPLAN Notices, QA76.7 .A13
  8771.  
  8772. Software: Practice and Experience, QA 76.5 .S653
  8773.  
  8774. ACM TOPLAS (Transactions on Programming Languages and Systems) QA76.7 .A16
  8775.  
  8776. Wexelblat, R.L. ed, "Proceedings: ACM SIGPLAN History of Programming
  8777. Languages Conference"  (Los Angeles, July 1978).  758 pp.  Academic Press
  8778. 1981.  An entertaining account of the history of roughly 15 major
  8779. programming languages.  Jean Sammet co-organized the conference.  ACM No
  8780. 548780.  ACM Order Dept: (800)342-6626.  QA76.7 .H56
  8781.  
  8782.  
  8783.  
  8784. APPENDIX B
  8785.  
  8786. A Chronology of Influential Computer Languages
  8787. ==============================================
  8788.  
  8789. Konrad Zuse in Nazi Germany may have developed the first real computer
  8790. programming language, "Plankalkul" ca. 1945.  This is mentioned in the 1978
  8791. ACM History of Programming Languages FORTRAN session.
  8792.  
  8793. According to Sammet, over 200 programming languages were developed between
  8794. 1952 and 1972, but she considered only about 13 of them to be significant.
  8795.  
  8796. 1957    FORTRAN
  8797. 1958    ALGOL
  8798. 1960    LISP
  8799. 1960    COBOL
  8800. 1962    APL
  8801. 1962    SIMULA
  8802. 1964    BASIC
  8803. 1964    PL/I
  8804. 1966    ISWIM
  8805. 1970    Prolog
  8806. 1972    C
  8807. 1975    Pascal
  8808. 1975    Scheme
  8809. 1978    CSP
  8810. 1978    FP
  8811. 1979    Modula-2
  8812. 1980    dBASE II
  8813. 1983    Smalltalk-80
  8814. 1983    Ada
  8815. 1983    Parlog
  8816. 1984    Standard ML
  8817. 1986    C++
  8818. 1986    CLP(R)
  8819. 1986    Eiffel
  8820. 1988    Mathematica
  8821. 1988    CLOS
  8822. 1990    Haskell
  8823.  
  8824.